Thanks. Can you add the diff between the two revisions at least to the thread here so I can take an easier look? :)
Thanks! -eric On Tue Jan 07 2014 at 1:55:49 PM, Adrian Prantl <[email protected]> wrote: > > On Jan 7, 2014, at 13:50, Eric Christopher <[email protected]> wrote: > > > > > On Tue Jan 07 2014 at 11:31:12 AM, Adrian Prantl <[email protected]> > wrote: > > Author: adrian > > Date: Tue Jan 7 13:24:24 2014 > > New Revision: 198699 > > > > URL: http://llvm.org/viewvc/llvm-project?rev=198699&view=rev > > Log: > > Debug info: Implement a cleaner version of r198461. For symmetry with > > C and C++ don't emit an extra lexical scope for the compound statement > > that is the body of an Objective-C method. > > > > rdar://problem/15010825 > > > > > > Next time it would be good if you could revert the previous patch so > that we only have to examine your current changes. > > Sure, I can do that next time! Sorry for the extra confusion. > > > > I seem to recall your previous patch changed some C++ testcases and that > your new patch hasn't changed them back. What's going on there? It may make > sense to revert this and your previous patch and reapply with just the > fixes needed for your objective c problem? > > The previous patch added a couple of scoping-related tests to the C++ test > cases that were not there originally, and they are still valid. > > Modified: cfe/trunk/test/CodeGenCXX/linetable-cleanup.cpp > URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/ > CodeGenCXX/linetable-cleanup.cpp?rev=198461&r1=198460&r2=198461&view=diff > ============================================================ > ================== > --- cfe/trunk/test/CodeGenCXX/linetable-cleanup.cpp (original) > +++ cfe/trunk/test/CodeGenCXX/linetable-cleanup.cpp Fri Jan 3 17:34:30 > 2014 > @@ -46,12 +46,14 @@ void bar() > void baz() > { > if (!foo()) > - // CHECK: {{.*}} = metadata !{i32 [[@LINE+1]], i32 0, metadata > !{{.*}}, null} > + // CHECK: ![[SCOPE1:.*]] = metadata !{{{.*}}, i32 [[@LINE-1]], > {{.*}}} ; [ DW_TAG_lexical_block ] > + // CHECK: {{.*}} = metadata !{i32 [[@LINE+1]], i32 0, metadata > ![[SCOPE1]], null} > return; > > if (foo()) { > // no cleanup > - // CHECK: {{.*}} = metadata !{i32 [[@LINE+1]], i32 0, metadata > !{{.*}}, null} > + // CHECK: {{.*}} = metadata !{i32 [[@LINE+2]], i32 0, metadata > ![[SCOPE2:.*]], null} > + // CHECK: ![[SCOPE2]] = metadata !{{{.*}}, i32 [[@LINE-3]], {{.*}}} ; > [ DW_TAG_lexical_block ] > return; > } > // CHECK: ![[RETBAZ]] = metadata !{i32 [[@LINE+1]], i32 0, metadata > !{{.*}}, null} > > It tests that the two return stmts are indeed in two different lexical > scopes. > > -- adrian >
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
