diff options
author | Ted Kremenek <kremenek@apple.com> | 2011-01-18 21:18:58 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2011-01-18 21:18:58 +0000 |
commit | c21fed361c11f13db345cba69101578578d8fb79 (patch) | |
tree | 5ac9e24ebf0be3b09183784363e80a3d2386416d /lib/Sema/AnalysisBasedWarnings.cpp | |
parent | c532b502858032f377056dc8cba2fe43cba8702b (diff) |
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).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123777 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/AnalysisBasedWarnings.cpp')
-rw-r--r-- | lib/Sema/AnalysisBasedWarnings.cpp | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/lib/Sema/AnalysisBasedWarnings.cpp b/lib/Sema/AnalysisBasedWarnings.cpp index 4463d3fea5..eb8590d60c 100644 --- a/lib/Sema/AnalysisBasedWarnings.cpp +++ b/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); } } } |