]> granicus.if.org Git - clang/commitdiff
[analyzer] Make analyzer-ipa=dynamic-bifurcate the default.
authorAnna Zaks <ganna@apple.com>
Thu, 30 Aug 2012 22:42:59 +0000 (22:42 +0000)
committerAnna Zaks <ganna@apple.com>
Thu, 30 Aug 2012 22:42:59 +0000 (22:42 +0000)
There are two tests regressions that come from the fact that the Retain
Count checker does not cancel out inlining of ObjC methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162950 91177308-0d34-0410-b5e6-96231b3b80d8

docs/analyzer/IPA.txt
include/clang/StaticAnalyzer/AnalyzerOptions.h
lib/Frontend/CompilerInvocation.cpp
test/Analysis/retain-release.m

index 071727f055f9a8747f186daeebc110addfb799ac..90c92270bfbdf79b27bde2881bb6decfbd3e5098 100644 (file)
@@ -23,7 +23,7 @@ Inlining
    does not drop the coverage in cases when the parent class has code that is
    only exercised when some of its methods are overridden.
 
-Currently, -analyzer-ipa=basic-inlining is the default mode.
+Currently, -analyzer-ipa=dynamic-bifurcate is the default mode.
 
 Basics of Implementation
 -----------------------
index 6810346cbedfcf353fe8eca46d46a3183f12b19f..0fb308db25be3d5153d37d90f232e45554509a8b 100644 (file)
@@ -144,7 +144,7 @@ public:
     AnalysisConstraintsOpt = RangeConstraintsModel;
     AnalysisDiagOpt = PD_HTML;
     AnalysisPurgeOpt = PurgeStmt;
-    IPAMode = BasicInlining;
+    IPAMode = DynamicDispatchBifurcate;
     ShowCheckerHelp = 0;
     AnalyzeAll = 0;
     AnalyzerDisplayProgress = 0;
index e4deed9ebcee9882b2bd20a3f3f2762e639d1891..17b22f3ae69de674bafe0a8a28b259a1bd499387 100644 (file)
@@ -147,7 +147,7 @@ static void AnalyzerOptsToArgs(const AnalyzerOptions &Opts, ToArgsList &Res) {
                   getAnalysisPurgeModeName(Opts.AnalysisPurgeOpt));
   if (!Opts.AnalyzeSpecificFunction.empty())
     Res.push_back("-analyze-function", Opts.AnalyzeSpecificFunction);
-  if (Opts.IPAMode != BasicInlining)
+  if (Opts.IPAMode != DynamicDispatchBifurcate)
     Res.push_back("-analyzer-ipa", getAnalysisIPAModeName(Opts.IPAMode));
   if (Opts.InliningMode != NoRedundancy)
     Res.push_back("-analyzer-inlining-mode",
index 4280d69ba5cd0dfa62c24ba4ab6b1b81db45856e..49a6bce4f3ef9d0387d9e54a9d218c583a053e60 100644 (file)
@@ -828,8 +828,8 @@ int RDar6320065_test() {
 @end
 
 void test_RDar6859457(RDar6859457 *x, void *bytes, NSUInteger dataLength) {
-  [x NoCopyString]; // no-warning
-  [x noCopyString]; // no-warning
+  [x NoCopyString]; // expected-warning{{leak}}
+  [x noCopyString]; // expected-warning{{leak}}
   [NSData dataWithBytesNoCopy:bytes length:dataLength];  // no-warning
   [NSData dataWithBytesNoCopy:bytes length:dataLength freeWhenDone:1]; // no-warning
 }