summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/AnalysisBasedWarnings.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2011-01-18 21:18:58 +0000
committerTed Kremenek <kremenek@apple.com>2011-01-18 21:18:58 +0000
commitb63931eef6bfcf900216dc1a180b29dcaa287090 (patch)
tree274fd855e7ac9f49a9a7884ba31a5c2be6d361de /clang/lib/Sema/AnalysisBasedWarnings.cpp
parente86a7ad01afca08f48ebf7b99f2a76204c963fa3 (diff)
downloadbcm5719-llvm-b63931eef6bfcf900216dc1a180b29dcaa287090.tar.gz
bcm5719-llvm-b63931eef6bfcf900216dc1a180b29dcaa287090.zip
Teach UninitializedValuesV2 to implicitly reason about C++
references by monitoring whether an access to a variable is solely to compute it's lvalue or to do an lvalue-to-rvalue conversion (i.e., a load). llvm-svn: 123777
Diffstat (limited to 'clang/lib/Sema/AnalysisBasedWarnings.cpp')
-rw-r--r--clang/lib/Sema/AnalysisBasedWarnings.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/clang/lib/Sema/AnalysisBasedWarnings.cpp b/clang/lib/Sema/AnalysisBasedWarnings.cpp
index 4463d3fea53..eb8590d60cb 100644
--- a/clang/lib/Sema/AnalysisBasedWarnings.cpp
+++ b/clang/lib/Sema/AnalysisBasedWarnings.cpp
@@ -442,13 +442,9 @@ AnalysisBasedWarnings::IssueWarnings(sema::AnalysisBasedWarnings::Policy P,
if (Diags.getDiagnosticLevel(diag::warn_var_is_uninit, D->getLocStart())
!= Diagnostic::Ignored) {
- if (!S.getLangOptions().CPlusPlus) {
- CFG *cfg = AC.getCFG();
- if (cfg) {
- UninitValsDiagReporter reporter(S);
- runUninitializedVariablesAnalysis(*cast<DeclContext>(D), *cfg,
- reporter);
- }
+ if (CFG *cfg = AC.getCFG()) {
+ UninitValsDiagReporter reporter(S);
+ runUninitializedVariablesAnalysis(*cast<DeclContext>(D), *cfg, reporter);
}
}
}
OpenPOWER on IntegriCloud