#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