On Sun, Jan 12, 2014 at 7:38 PM, Sean Silva <[email protected]> wrote: > > > > On Sun, Jan 12, 2014 at 6:53 PM, Aaron Ballman <[email protected]> > wrote: >> >> > That's good news -- thanks for confirming. >> > >> > The feature detection macro itself will still need to have a different >> > name >> > (or some other mechanism) so it can be used compatibly with existing >> > clang >> > deployments, because _has_attribute() currently emits a parse error >> > instead >> > of gracefully returning 0 when passed the new argument syntax: >> > >> > tmp/attr2.cpp:1:5: error: builtin feature check macro requires a >> > parenthesized identifier >> > #if __has_attribute(__attribute__((weakref))) >> > ^ >> >> Good catch. Unfortunately, __has_attribute is really the best >> identifier for the macro, so I am loathe to let it go. >> >> Due to the current design of __has_attribute, we can't get away with " >> magic" by expanding the non-function-like form into a value that could >> be tested. So we would really have to pick a new name if we are >> worried about this. >> >> Suggestions on the name are welcome. > > > Ok, I'll bite: > > __has_attribute_written_as([[foo]]) > __has_attribute_syntax([[foo]]) > __has_attribute_spelling([[foo]])
I kind of like __has_attribute_syntax, truth be told. Thank you for the suggestions! ~Aaron _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
