llvm-project/clang/lib/Sema
Yaxun (Sam) Liu 5767085c8d Fix infinite recursion in deferred diag emitter
Currently deferred diagnostic emitter checks variable decl in DeclRefExpr, which
causes infinite recursion for cases like long a = (long)&a;.

Deferred diagnostic emitter does not need check variable decls in DeclRefExpr
since reference of a variable does not cause emission of functions directly or
indirectly. Therefore there is no need to check variable decls in DeclRefExpr.

Differential Revision: https://reviews.llvm.org/D76937
2020-04-01 22:17:43 -04:00
..
AnalysisBasedWarnings.cpp Revert "[clang] detect switch fallthrough marked by a comment (PR43465)" 2020-03-02 22:33:25 +01:00
CMakeLists.txt [Sema] Split availability processing into SemaAvailability.cpp 2020-01-24 17:35:39 -08:00
CodeCompleteConsumer.cpp [CodeComplete] Member completion for concept-constrained types. 2020-03-31 18:43:24 +02:00
CoroutineStmtBuilder.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DeclSpec.cpp Improve recovery from invalid template-ids. 2020-03-27 17:11:04 -07:00
DelayedDiagnostic.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IdentifierResolver.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
JumpDiagnostics.cpp [CodeGen] Emit destructor calls to destruct compound literals 2020-03-10 14:08:28 -07:00
MultiplexExternalSemaSource.cpp recommit 1b978ddba0 [CUDA][HIP][OpenMP] Emit deferred diagnostics by a post-parsing AST travese 2020-03-23 12:09:07 -04:00
OpenCLBuiltins.td [OpenCL] Add pipe and kernel enqueuing builtins 2020-03-17 13:15:32 +00:00
ParsedAttr.cpp Const-initialize ParsedAttrInfos 2020-03-28 19:04:53 +01:00
Scope.cpp Un-revert "[coroutines][PR40978] Emit error for co_yield within catch block" 2019-03-25 00:53:10 +00:00
ScopeInfo.cpp PR42104: Support instantiations of lambdas that implicitly capture 2019-06-04 17:17:20 +00:00
Sema.cpp Fix infinite recursion in deferred diag emitter 2020-04-01 22:17:43 -04:00
SemaAccess.cpp [c++20] Delete defaulted comparison functions if they would invoke an 2019-12-10 19:28:30 -08:00
SemaAttr.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
SemaAvailability.cpp Prune TargetInfo.h include from ParsedAttr.h, NFC 2020-03-11 20:47:11 -07:00
SemaCUDA.cpp recommit 1b978ddba0 [CUDA][HIP][OpenMP] Emit deferred diagnostics by a post-parsing AST travese 2020-03-23 12:09:07 -04:00
SemaCXXScopeSpec.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
SemaCast.cpp [Sema][SVE] Allow casting SVE types to themselves in C 2020-03-25 10:52:43 +00:00
SemaChecking.cpp [clang] Fix crash during template sema checking 2020-03-21 12:42:06 +01:00
SemaCodeComplete.cpp [CodeComplete] Member completion for concept-constrained types. 2020-03-31 18:43:24 +02:00
SemaConcept.cpp [Concepts] Add missing CXXThisScope to function template constraint substitution 2020-02-05 01:10:35 +02:00
SemaConsumer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SemaCoroutine.cpp Fix "pointer is null" static analyzer warnings. NFCI. 2020-01-09 12:05:48 +00:00
SemaDecl.cpp Fix infinite recursion in deferred diag emitter 2020-04-01 22:17:43 -04:00
SemaDeclAttr.cpp [cuda][hip] Add CUDA builtin surface/texture reference support. 2020-03-27 17:18:49 -04:00
SemaDeclCXX.cpp [cuda][hip] Add CUDA builtin surface/texture reference support. 2020-03-27 17:18:49 -04:00
SemaDeclObjC.cpp [objc_direct] also go through implementations when looking for clashes 2020-03-23 20:49:09 -07:00
SemaExceptionSpec.cpp Revert "[OPENMP50]Add initial support for OpenMP 5.0 iterator." 2020-04-01 14:54:45 -04:00
SemaExpr.cpp Revert "[OPENMP50]Add initial support for OpenMP 5.0 iterator." 2020-04-01 14:54:45 -04:00
SemaExprCXX.cpp [CodeGen] Emit destructor calls to destruct non-trivial C struct objects 2020-03-20 18:34:22 -07:00
SemaExprMember.cpp Resolve exception specifications after marking the corresponding 2019-12-15 22:02:30 -08:00
SemaExprObjC.cpp [objc_direct] Small updates to help with adoption. 2020-02-16 16:32:41 -08:00
SemaFixItUtils.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SemaInit.cpp [clang] Add support for consteval constructors 2020-03-20 11:33:54 +01:00
SemaLambda.cpp [Sema][SVE] Don't allow fields to have sizeless type 2020-03-13 19:22:23 +00:00
SemaLookup.cpp Fix handling of destructor names that name typedefs. 2020-02-10 02:21:01 -08:00
SemaModule.cpp [DeclCXX] Remove unknown external linkage specifications 2019-11-21 15:23:05 +02:00
SemaObjCProperty.cpp [NFC] Remove trailing space 2020-02-18 10:49:13 +08:00
SemaOpenMP.cpp Revert "[OPENMP50]Add initial support for OpenMP 5.0 iterator." 2020-04-01 14:54:45 -04:00
SemaOverload.cpp [c++20] Further extend the set of comparisons broken by C++20 that we 2020-03-20 14:22:48 -07:00
SemaPseudoObject.cpp [OpenMP] `omp begin/end declare variant` - part 2, sema ("+CG") 2020-03-27 02:30:58 -05:00
SemaStmt.cpp [OpenMP] `omp begin/end declare variant` - part 2, sema ("+CG") 2020-03-27 02:30:58 -05:00
SemaStmtAsm.cpp Support output constraints on "asm goto" 2020-02-24 18:51:29 -08:00
SemaStmtAttr.cpp [NFCI]Create CommonAttributeInfo Type as base type of *Attr and ParsedAttr. 2019-09-13 17:39:31 +00:00
SemaTemplate.cpp Don't claim template names that name non-templates are undeclared. 2020-03-29 13:15:30 -07:00
SemaTemplateDeduction.cpp PR44890: Inherit explicitly-specified template arguments into base class 2020-02-15 02:16:21 -08:00
SemaTemplateInstantiate.cpp [SYCL] Implement __builtin_unique_stable_name. 2020-03-25 07:01:50 -07:00
SemaTemplateInstantiateDecl.cpp [OpenMP][NFC] Minimize memory usage and copying of `OMPTraitInfo`s 2020-03-23 14:23:46 -05:00
SemaTemplateVariadic.cpp [NFC] Remove trailing space 2020-02-18 10:49:13 +08:00
SemaType.cpp [AST] Fix crashes on decltype(recovery-expr). 2020-03-30 14:56:33 +02:00
TreeTransform.h Revert "[OPENMP50]Add initial support for OpenMP 5.0 iterator." 2020-04-01 14:54:45 -04:00
TypeLocBuilder.cpp [NFC] avoid AlignedCharArray in clang 2019-07-29 23:12:48 +00:00
TypeLocBuilder.h [NFC] avoid AlignedCharArray in clang 2019-07-29 23:12:48 +00:00
UsedDeclVisitor.h recommit 1b978ddba0 [CUDA][HIP][OpenMP] Emit deferred diagnostics by a post-parsing AST travese 2020-03-23 12:09:07 -04:00