llvm-project/clang/lib
Eric Fiselier 7ae80c6396 [Sema] Prevent using member declaration diagnostic if the base class is invalid.
Summary:
Once a base class has been made invalid (by a static_assert for example) all using-member declarations in the derived classes will result in a "not a base class" diagnostic. This diagnostic is very misleading and should not be emitted.

This change is needed to help libc++ produce reasonable diagnostics in `std::optional` and `std::variant`.  

Reviewers: rsmith, majnemer, aaron.ballman

Subscribers: cfe-commits

Differential Revision: https://reviews.llvm.org/D25430

llvm-svn: 283755
2016-10-10 14:26:40 +00:00
..
ARCMigrate [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
AST Revert "P0035R4: Semantic analysis and code generation for C++17 overaligned allocation." 2016-10-10 14:13:55 +00:00
ASTMatchers Complete support for the cxxCtorInitializer() AST matcher so that it can be used as a top-level matcher. 2016-09-26 17:04:27 +00:00
Analysis [analyzer] Re-apply r283094 "Improve CloneChecker diagnostics" 2016-10-08 10:54:30 +00:00
Basic Revert "[x86][inline-asm][clang] accept 'v' constraint" 2016-10-10 11:40:28 +00:00
CodeGen Revert "P0035R4: Semantic analysis and code generation for C++17 overaligned allocation." 2016-10-10 14:13:55 +00:00
Driver Revert r283680. 2016-10-10 14:10:00 +00:00
Edit [OpenCL] Generate opaque type for sampler_t and function call for the initializer 2016-07-28 19:26:30 +00:00
Format Make DeletedLines local variables in checkEmptyNamespace. 2016-10-05 15:49:01 +00:00
Frontend Mark aligned allocation as done. 2016-10-10 06:55:42 +00:00
FrontendTool C++ Modules TS: add frontend support for building pcm files from module 2016-08-26 00:14:38 +00:00
Headers Revert r283683 because r283680 got reverted. 2016-10-10 14:20:35 +00:00
Index Visit lambda capture inits from RecursiveASTVisitor::TraverseLambdaCapture(). 2016-08-17 14:59:53 +00:00
Lex Use StringRef for MemoryBuffer identifier API (NFC) 2016-10-01 16:38:28 +00:00
Parse [CUDA] Add #pragma clang force_cuda_host_device_{begin,end} pragmas. 2016-10-08 22:15:58 +00:00
Rewrite [analyzer] Re-apply r283092, attempt no.4, chunk no.4 (last) 2016-10-07 19:25:10 +00:00
Sema [Sema] Prevent using member declaration diagnostic if the base class is invalid. 2016-10-10 14:26:40 +00:00
Serialization Revert "P0035R4: Semantic analysis and code generation for C++17 overaligned allocation." 2016-10-10 14:13:55 +00:00
StaticAnalyzer [analyzer] Fix build error after r283660 - remove constexpr strings. 2016-10-08 11:07:21 +00:00
Tooling Use llvm::raw_string_ostream instead of std::stringstream (NFC) 2016-10-06 04:26:16 +00:00
CMakeLists.txt