#define WORKAROUND(cx_, saver_) \ Workaround WORKAROUND_PASTE(w_, __LINE__)((cx_), (saver_)) #define WORKAROUND_PASTE(a_, b_) WORKAROUND_PASTE2(a_, b_) #define WORKAROUND_PASTE2(a_, b_) a_ ## b_ /* having fun yet? */ #define SAVER(cx_, saver_) \ AutoValueRooter saver_(cx_); \ WORKAROUND((cx_), (saver_));
26.02.10
Working on the JS engine, Episode III: offered without comment
2 Comments »
RSS feed for comments on this post. TrackBack URI
Yo dawg! We heard you like workarounds!
Comment by Justin Dolske — 26.02.10 @ 22:27
The good news is that this code is part of a patch which doesn’t seem to do well performance-wise (not even mentioning its other obvious drawbacks), so it’s probably something I’ll never have to look at again.
Comment by Jeff — 26.02.10 @ 22:58