aaron.ballman added inline comments.
================ Comment at: lib/Parse/ParseDecl.cpp:1161 + } else { + assert(Keyword == Ident_defined_in); + if (HadDefinedIn) { ---------------- Add a string literal to the assert? ================ Comment at: lib/Parse/ParseDeclCXX.cpp:3818-3819 + if (ScopeName && (ScopeName->getName() == "gnu" || + (ScopeName->getName() == "clang" && + AttrName->isStr("external_source_symbol")))) // GNU-scoped attributes have some special cases to handle GNU-specific ---------------- aaron.ballman wrote: > I don't really like hard-coding a list of attributes like this. I think you > should handle clang-namespaced attributes with a separate helper function. This still isn't quite what I was looking for -- the helper function I was talking about was a replacement for `ParseGNUAttributeArgs()`. I'm sorry if I was unclear. I think we should have a `ParseClangAttributeArgs()` that handles your custom parsing; it can then call through to `ParseAttributeArgsCommon()` for common argument handling in the same way `ParseGNUAttributeArgs()` does. So the predicate would be `else if (ScopeName && ScopeName->getName() == "clang")`. Repository: rL LLVM https://reviews.llvm.org/D29819 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits