From 78328be4b7ed079aa7013c324b27f85ea6301f41 Mon Sep 17 00:00:00 2001 From: Jordan Rose Date: Mon, 21 Jan 2013 18:28:30 +0000 Subject: [PATCH] [analyzer] Show notes inside implicit calls at the last explicit call site. Before: struct Wrapper { <-- 2. Calling default constructor for 'NonTrivial'. NonTrivial m; }; Wrapper w; <-- 1. Calling implicit default constructor for 'Wrapper'. After: struct Wrapper { NonTrivial m; }; Wrapper w; <-- 1. Calling implicit default constructor for 'Wrapper'. ^-- 2. Calling default constructor for 'NonTrivial'. llvm-svn: 173067 --- clang/lib/StaticAnalyzer/Core/BugReporter.cpp | 9 +- clang/test/Analysis/inlining/path-notes.cpp | 252 +++++++++++++------------- 2 files changed, 132 insertions(+), 129 deletions(-) diff --git a/clang/lib/StaticAnalyzer/Core/BugReporter.cpp b/clang/lib/StaticAnalyzer/Core/BugReporter.cpp index d64aa39..38069a5 100644 --- a/clang/lib/StaticAnalyzer/Core/BugReporter.cpp +++ b/clang/lib/StaticAnalyzer/Core/BugReporter.cpp @@ -264,16 +264,19 @@ static void adjustCallLocations(PathPieces &Pieces, } if (LastCallLocation) { - if (!Call->callEnter.asLocation().isValid()) + if (!Call->callEnter.asLocation().isValid() || + Call->getCaller()->isImplicit()) Call->callEnter = *LastCallLocation; - if (!Call->callReturn.asLocation().isValid()) + if (!Call->callReturn.asLocation().isValid() || + Call->getCaller()->isImplicit()) Call->callReturn = *LastCallLocation; } // Recursively clean out the subclass. Keep this call around if // it contains any informative diagnostics. PathDiagnosticLocation *ThisCallLocation; - if (Call->callEnterWithin.asLocation().isValid()) + if (Call->callEnterWithin.asLocation().isValid() && + !Call->getCallee()->isImplicit()) ThisCallLocation = &Call->callEnterWithin; else ThisCallLocation = &Call->callEnter; diff --git a/clang/test/Analysis/inlining/path-notes.cpp b/clang/test/Analysis/inlining/path-notes.cpp index 6678642..2e0a0959 100644 --- a/clang/test/Analysis/inlining/path-notes.cpp +++ b/clang/test/Analysis/inlining/path-notes.cpp @@ -91,11 +91,6 @@ namespace defaulted { }; class Wrapper { - // FIXME: Notes within implicit bodies shouldn't appear at the class name. - // expected-note@-2 {{Calling default constructor for 'Dereferencer'}} - // expected-note@-3 {{Calling copy constructor for 'Dereferencer'}} - // expected-note@-4 {{Calling copy assignment operator for 'Dereferencer'}} - // expected-note@-5 {{Calling '~Dereferencer'}} Dereferencer d; }; @@ -116,6 +111,7 @@ namespace defaulted { // expected-note@-1 {{Null pointer value stored to 'globalPtr'}} Wrapper w; // expected-note@-1 {{Calling implicit default constructor for 'Wrapper'}} + // expected-note@-2 {{Calling default constructor for 'Dereferencer'}} } void testCopyConstruction(const Wrapper &input) { @@ -123,6 +119,7 @@ namespace defaulted { // expected-note@-1 {{Null pointer value stored to 'globalPtr'}} Wrapper w{input}; // expected-note@-1 {{Calling implicit copy constructor for 'Wrapper'}} + // expected-note@-2 {{Calling copy constructor for 'Dereferencer'}} } void testMoveConstruction(MovableWrapper &&input) { @@ -138,6 +135,7 @@ namespace defaulted { // expected-note@-1 {{Null pointer value stored to 'globalPtr'}} w = input; // expected-note@-1 {{Calling implicit copy assignment operator for 'Wrapper'}} + // expected-note@-2 {{Calling copy assignment operator for 'Dereferencer'}} } void testMoveAssignment(MovableWrapper &&input) { @@ -152,7 +150,9 @@ namespace defaulted { Wrapper w; globalPtr = 0; // expected-note@-1 {{Null pointer value stored to 'globalPtr'}} - } // expected-note {{Calling implicit destructor for 'Wrapper'}} + } + // expected-note@-1 {{Calling implicit destructor for 'Wrapper'}} + // expected-note@-2 {{Calling '~Dereferencer'}} } // CHECK: diagnostics @@ -971,7 +971,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line115 +// CHECK-NEXT: line111 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -979,12 +979,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line115 +// CHECK-NEXT: line111 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line115 +// CHECK-NEXT: line111 // CHECK-NEXT: col17 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1004,12 +1004,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line115 +// CHECK-NEXT: line111 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line115 +// CHECK-NEXT: line111 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1017,12 +1017,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line117 +// CHECK-NEXT: line113 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line117 +// CHECK-NEXT: line113 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1034,7 +1034,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line117 +// CHECK-NEXT: line113 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1042,12 +1042,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line117 +// CHECK-NEXT: line113 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line117 +// CHECK-NEXT: line113 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1063,21 +1063,21 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line93 -// CHECK-NEXT: col9 +// CHECK-NEXT: line113 +// CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: ranges // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line93 -// CHECK-NEXT: col9 +// CHECK-NEXT: line113 +// CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line93 -// CHECK-NEXT: col15 +// CHECK-NEXT: line113 +// CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: @@ -1184,7 +1184,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line122 +// CHECK-NEXT: line119 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1192,12 +1192,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line122 +// CHECK-NEXT: line119 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line122 +// CHECK-NEXT: line119 // CHECK-NEXT: col17 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1217,12 +1217,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line122 +// CHECK-NEXT: line119 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line122 +// CHECK-NEXT: line119 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1230,12 +1230,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line124 +// CHECK-NEXT: line121 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line124 +// CHECK-NEXT: line121 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1247,7 +1247,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line124 +// CHECK-NEXT: line121 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1255,12 +1255,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line124 +// CHECK-NEXT: line121 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line124 +// CHECK-NEXT: line121 // CHECK-NEXT: col19 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1276,21 +1276,21 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line93 -// CHECK-NEXT: col9 +// CHECK-NEXT: line121 +// CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: ranges // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line93 -// CHECK-NEXT: col9 +// CHECK-NEXT: line121 +// CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line93 -// CHECK-NEXT: col15 +// CHECK-NEXT: line121 +// CHECK-NEXT: col19 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: @@ -1397,7 +1397,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line129 +// CHECK-NEXT: line127 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1405,12 +1405,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line129 +// CHECK-NEXT: line127 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line129 +// CHECK-NEXT: line127 // CHECK-NEXT: col17 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1430,12 +1430,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line129 +// CHECK-NEXT: line127 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line129 +// CHECK-NEXT: line127 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1443,12 +1443,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line131 +// CHECK-NEXT: line129 // CHECK-NEXT: col22 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line131 +// CHECK-NEXT: line129 // CHECK-NEXT: col25 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1464,12 +1464,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line131 +// CHECK-NEXT: line129 // CHECK-NEXT: col22 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line131 +// CHECK-NEXT: line129 // CHECK-NEXT: col25 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1477,12 +1477,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line131 +// CHECK-NEXT: line129 // CHECK-NEXT: col20 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line131 +// CHECK-NEXT: line129 // CHECK-NEXT: col20 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1494,7 +1494,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line131 +// CHECK-NEXT: line129 // CHECK-NEXT: col20 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1502,12 +1502,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line131 +// CHECK-NEXT: line129 // CHECK-NEXT: col20 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line131 +// CHECK-NEXT: line129 // CHECK-NEXT: col32 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1523,7 +1523,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line107 +// CHECK-NEXT: line103 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1531,12 +1531,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line107 +// CHECK-NEXT: line103 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line107 +// CHECK-NEXT: line103 // CHECK-NEXT: col18 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1648,12 +1648,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line136 +// CHECK-NEXT: line134 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line136 +// CHECK-NEXT: line134 // CHECK-NEXT: col11 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1661,12 +1661,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line136 +// CHECK-NEXT: line134 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line136 +// CHECK-NEXT: line134 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1682,12 +1682,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line136 +// CHECK-NEXT: line134 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line136 +// CHECK-NEXT: line134 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1695,12 +1695,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line137 +// CHECK-NEXT: line135 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line137 +// CHECK-NEXT: line135 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1712,7 +1712,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line137 +// CHECK-NEXT: line135 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1720,12 +1720,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line137 +// CHECK-NEXT: line135 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line137 +// CHECK-NEXT: line135 // CHECK-NEXT: col17 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1745,12 +1745,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line137 +// CHECK-NEXT: line135 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line137 +// CHECK-NEXT: line135 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1758,12 +1758,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line139 +// CHECK-NEXT: line137 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line139 +// CHECK-NEXT: line137 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1775,7 +1775,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line139 +// CHECK-NEXT: line137 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1783,12 +1783,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line139 +// CHECK-NEXT: line137 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line139 +// CHECK-NEXT: line137 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1804,21 +1804,21 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line93 -// CHECK-NEXT: col9 +// CHECK-NEXT: line137 +// CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: ranges // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line93 -// CHECK-NEXT: col9 +// CHECK-NEXT: line137 +// CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line93 -// CHECK-NEXT: col15 +// CHECK-NEXT: line137 +// CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: @@ -1931,12 +1931,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line144 +// CHECK-NEXT: line143 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line144 +// CHECK-NEXT: line143 // CHECK-NEXT: col18 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1944,12 +1944,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line144 +// CHECK-NEXT: line143 // CHECK-NEXT: col20 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line144 +// CHECK-NEXT: line143 // CHECK-NEXT: col20 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1965,12 +1965,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line144 +// CHECK-NEXT: line143 // CHECK-NEXT: col20 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line144 +// CHECK-NEXT: line143 // CHECK-NEXT: col20 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1978,12 +1978,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line145 +// CHECK-NEXT: line144 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line145 +// CHECK-NEXT: line144 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -1995,7 +1995,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line145 +// CHECK-NEXT: line144 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2003,12 +2003,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line145 +// CHECK-NEXT: line144 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line145 +// CHECK-NEXT: line144 // CHECK-NEXT: col17 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2028,12 +2028,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line145 +// CHECK-NEXT: line144 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line145 +// CHECK-NEXT: line144 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2041,12 +2041,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line147 +// CHECK-NEXT: line146 // CHECK-NEXT: col9 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line147 +// CHECK-NEXT: line146 // CHECK-NEXT: col12 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2062,12 +2062,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line147 +// CHECK-NEXT: line146 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line147 +// CHECK-NEXT: line146 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2075,12 +2075,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line147 +// CHECK-NEXT: line146 // CHECK-NEXT: col9 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line147 +// CHECK-NEXT: line146 // CHECK-NEXT: col12 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2092,7 +2092,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line147 +// CHECK-NEXT: line146 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2100,12 +2100,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line147 +// CHECK-NEXT: line146 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line147 +// CHECK-NEXT: line146 // CHECK-NEXT: col19 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2125,12 +2125,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line110 +// CHECK-NEXT: line106 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line110 +// CHECK-NEXT: line106 // CHECK-NEXT: col18 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2138,12 +2138,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line110 +// CHECK-NEXT: line106 // CHECK-NEXT: col21 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line110 +// CHECK-NEXT: line106 // CHECK-NEXT: col28 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2155,7 +2155,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line110 +// CHECK-NEXT: line106 // CHECK-NEXT: col21 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2163,12 +2163,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line110 +// CHECK-NEXT: line106 // CHECK-NEXT: col21 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line110 +// CHECK-NEXT: line106 // CHECK-NEXT: col28 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2282,12 +2282,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line152 +// CHECK-NEXT: line151 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line152 +// CHECK-NEXT: line151 // CHECK-NEXT: col11 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2295,12 +2295,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line152 +// CHECK-NEXT: line151 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line152 +// CHECK-NEXT: line151 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2316,12 +2316,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line152 +// CHECK-NEXT: line151 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line152 +// CHECK-NEXT: line151 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2329,12 +2329,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line153 +// CHECK-NEXT: line152 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line153 +// CHECK-NEXT: line152 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2346,7 +2346,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line153 +// CHECK-NEXT: line152 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2354,12 +2354,12 @@ namespace defaulted { // CHECK-NEXT: // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line153 +// CHECK-NEXT: line152 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line153 +// CHECK-NEXT: line152 // CHECK-NEXT: col17 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2379,12 +2379,12 @@ namespace defaulted { // CHECK-NEXT: start // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line153 +// CHECK-NEXT: line152 // CHECK-NEXT: col5 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line153 +// CHECK-NEXT: line152 // CHECK-NEXT: col13 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2392,12 +2392,12 @@ namespace defaulted { // CHECK-NEXT: end // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line155 +// CHECK-NEXT: line154 // CHECK-NEXT: col3 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: -// CHECK-NEXT: line155 +// CHECK-NEXT: line154 // CHECK-NEXT: col3 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2409,7 +2409,7 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line155 +// CHECK-NEXT: line154 // CHECK-NEXT: col3 // CHECK-NEXT: file0 // CHECK-NEXT: @@ -2423,8 +2423,8 @@ namespace defaulted { // CHECK-NEXT: kindevent // CHECK-NEXT: location // CHECK-NEXT: -// CHECK-NEXT: line93 -// CHECK-NEXT: col9 +// CHECK-NEXT: line154 +// CHECK-NEXT: col3 // CHECK-NEXT: file0 // CHECK-NEXT: // CHECK-NEXT: depth1 -- 2.7.4