diff options
author | NAKAMURA Takumi <geek4civic@gmail.com> | 2013-01-19 01:47:46 +0000 |
---|---|---|
committer | NAKAMURA Takumi <geek4civic@gmail.com> | 2013-01-19 01:47:46 +0000 |
commit | 6adfff14ee7eaaf50af00bcb793a79e7d82f1265 (patch) | |
tree | 95e2679f7aa7c0952e3d42648828fd60643a719b /lib/Sema/SemaDecl.cpp | |
parent | 1bdac1d447f0a9e8db97ed5598d15174bc00e5e1 (diff) |
Revert r172878, "Reword warning about using a *static* variable within its own initialization."
It broke, at least, linux, msvc and mingw bots.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172879 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaDecl.cpp')
-rw-r--r-- | lib/Sema/SemaDecl.cpp | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp index dbdbc3d6a2..9cf5e73665 100644 --- a/lib/Sema/SemaDecl.cpp +++ b/lib/Sema/SemaDecl.cpp @@ -6683,17 +6683,11 @@ namespace { void VisitObjCMessageExpr(ObjCMessageExpr *E) { return; } void HandleDeclRefExpr(DeclRefExpr *DRE) { - Decl* ReferenceDecl = DRE->getDecl(); + Decl* ReferenceDecl = DRE->getDecl(); if (OrigDecl != ReferenceDecl) return; - unsigned diag; - if (isReferenceType) { - diag = diag::warn_uninit_self_reference_in_reference_init; - } else if (cast<VarDecl>(OrigDecl)->isStaticLocal()) { - diag = diag::warn_static_self_reference_in_init; - } else { - diag = diag::warn_uninit_self_reference_in_init; - } - + unsigned diag = isReferenceType + ? diag::warn_uninit_self_reference_in_reference_init + : diag::warn_uninit_self_reference_in_init; S.DiagRuntimeBehavior(DRE->getLocStart(), DRE, S.PDiag(diag) << DRE->getNameInfo().getName() |