llvm-project/clang/utils/TableGen
Richard Smith 33bddbd64b Make attribute instantiation instantiate all attributes, not just the first of
each kind.

Attribute instantiation would previously default to instantiating each kind of
attribute only once. This was overridden by a flag whose intended purpose was
to permit attributes from a prior declaration to be inherited onto a new
declaration even if that new declaration had its own copy of the attribute.
This is the wrong behavior: when instantiating attributes from a template, we
should always instantiate all the attributes that were written on that
template.

This patch renames the flag in the Attr class (and TableGen sources) to more
clearly identify what it's actually for, and removes the usage of the flag from
template instantiation. I also removed the flag from AlignedAttr, which was
only added to work around the incorrect suppression of duplicate attribute
instantiation.

llvm-svn: 321834
2018-01-04 23:42:29 +00:00
..
CMakeLists.txt Move the clang-tblgen project into the Clang tablegenning folder on IDEs like Visual Studio rather than leave it in the root directory. NFC. 2017-11-04 20:06:22 +00:00
ClangASTNodesEmitter.cpp TableGen: Adapt to llvm r288612 2016-12-04 05:55:09 +00:00
ClangAttrEmitter.cpp Make attribute instantiation instantiate all attributes, not just the first of 2018-01-04 23:42:29 +00:00
ClangCommentCommandInfoEmitter.cpp Fix Clang-tidy modernize-use-nullptr warnings in headers and generated files; other minor cleanups. 2015-09-29 20:56:43 +00:00
ClangCommentHTMLNamedCharacterReferenceEmitter.cpp
ClangCommentHTMLTagsEmitter.cpp Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types 2015-05-29 19:42:19 +00:00
ClangDataCollectorsEmitter.cpp Add '\n' in ClangDataCollectorsEmitter 2017-09-08 16:17:16 +00:00
ClangDiagnosticsEmitter.cpp [TableGen] Clang changes to support Record::getValueAsString and getValueAsListOfStrings returning StringRef instead of std::string 2017-05-31 19:01:22 +00:00
ClangOptionDocEmitter.cpp [TableGen] Clang changes to support Record::getValueAsString and getValueAsListOfStrings returning StringRef instead of std::string 2017-05-31 19:01:22 +00:00
ClangSACheckersEmitter.cpp [TableGen] Clang changes to support Record::getValueAsString and getValueAsListOfStrings returning StringRef instead of std::string 2017-05-31 19:01:22 +00:00
NeonEmitter.cpp Avoid int to string conversion in Twine or raw_ostream contexts. 2017-12-28 16:58:54 +00:00
TableGen.cpp [AST] Add TableGen for StmtDataCollectors 2017-09-06 13:20:51 +00:00
TableGenBackends.h [AST] Add TableGen for StmtDataCollectors 2017-09-06 13:20:51 +00:00