hintonda added a comment.

Actually, this will never work correctly -- in fact, raw lexing will always be 
problematic.  Consider:

void foo()
#if !__has_feature(cxx_noexcept)

  throw(std::bad_alloc)

#endif
{}

In this case we *could* figure out if __has_feature(cxx_noexcept) evaluated to 
true or false, but what if it was a macro instead?  We can't reliably handle it 
without reparsing the whole thing.

I'll leave it as is for now, but once http://reviews.llvm.org/D20428 is 
available, I'll start a new diff using it.


http://reviews.llvm.org/D18575



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to