Move the END_WITH_NULL marker. Vladimir suggests that this works better
with
GCC 4.1. I tried it with 4.0 and 3.3 and it seems fine.
Just for note: this suggested by Jeff Cohen in
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20051017/028884.html
I only check for 4.1.0 and post
This doesn't compile for my copy of gcc;+#if __GNUC__ > 3+#define END_WITH_NULL __attribute__((sentinel))+#else+#define END_WITH_NULL+#endif ValuesClass values(const char *Arg, DataType Val, const char *Desc,- ...) {+ ...) END_WITH_NULL {/llvm