llvm-project/clang/utils/TableGen
Richard Smith 4ccb6c36a9 Fix violations of [basic.class.scope]p2.
These cases all follow the same pattern:

struct A {
  friend class X;
  //...
  class X {};
};

But 'friend class X;' injects 'X' into the surrounding namespace scope,
rather than introducing a class member. So the second 'class X {}' is a
completely different type, which changes the meaning of the earlier name
'X' from '::X' to 'A::X'.

Additionally, the friend declaration is pointless -- members of a class
don't need to be befriended to be able to access private members.
2020-06-01 22:03:05 -07:00
..
ASTTableGen.cpp Add the ability to use property-based serialization for "cased" types. 2019-12-16 13:33:59 -05:00
ASTTableGen.h Add the ability for properties to be conditional on other properties. 2019-12-16 13:34:00 -05:00
CMakeLists.txt [Clang][SVE] Parse builtin type string for scalable vectors 2020-03-15 14:34:52 +00:00
ClangASTNodesEmitter.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
ClangASTPropertiesEmitter.cpp Forward {read,write}SomeEnumType to {read,write}Enum instead of 2019-12-16 13:34:00 -05:00
ClangAttrEmitter.cpp Support GCC [[gnu::attributes]] in C2x mode 2020-06-01 10:42:42 -04:00
ClangCommentCommandInfoEmitter.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
ClangCommentHTMLNamedCharacterReferenceEmitter.cpp Fix one round of implicit conversions found by g++5. 2020-01-29 01:52:48 +01:00
ClangCommentHTMLTagsEmitter.cpp Fix one round of implicit conversions found by g++5. 2020-01-29 01:52:48 +01:00
ClangDataCollectorsEmitter.cpp Use scope qualifiers in Clang's tblgen backends to get useful 2019-10-01 23:12:57 +00:00
ClangDiagnosticsEmitter.cpp Avoid including FileSystem.h from MemoryBuffer.h 2020-02-29 12:30:23 -08:00
ClangOpcodesEmitter.cpp Use scope qualifiers in Clang's tblgen backends to get useful 2019-10-01 23:12:57 +00:00
ClangOpenCLBuiltinEmitter.cpp Upgrade some instances of std::sort to llvm::sort. NFC. 2020-03-28 19:23:29 +01:00
ClangOptionDocEmitter.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
ClangSACheckersEmitter.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
ClangTypeNodesEmitter.cpp Enable better node-hierarchy metaprogramming; NFC. 2019-12-14 00:16:47 -05:00
MveEmitter.cpp [SVE] Eliminate calls to default-false VectorType::get() from Clang 2020-06-01 10:02:14 -07:00
NeonEmitter.cpp Fix violations of [basic.class.scope]p2. 2020-06-01 22:03:05 -07:00
SveEmitter.cpp [clang][SveEmitter] SVE builtins for `svusdot` and `svsudot` ACLE. 2020-05-18 23:07:23 +00:00
TableGen.cpp [SveEmitter] Add range checks for immediates and predicate patterns. 2020-04-14 16:49:32 +01:00
TableGenBackends.h [SveEmitter] Add range checks for immediates and predicate patterns. 2020-04-14 16:49:32 +01:00