[patch] Emit aliases for more constructors (V2)

David Blaikie dblaikie at gmail.com
Mon Oct 14 15:34:43 PDT 2013


On Sun, Oct 13, 2013 at 9:41 AM, Rafael EspĂ­ndola <
rafael.espindola at gmail.com> wrote:

> >. How do I track which "expected failure" switched to a
> > "unexpected successes"?
> >
>
> diffing the sum files show that the difference is expand-sals.exp
> which is marked as llvm.org/pr14610. Looks like producing an alias
> avoids the duplicated debug info?


I haven't looked in detail at your change, but PR14610 (perhaps poorly
explained by me in the bug) is more than about the duplicate debug info,
but about the fact that we implement C1/C2 and D1/D2 by having one call the
other so when you break on the ctor or dtor you actually break twice (once
inside *1, then in *2 or whichever way it goes).

By using aliases we get closer to (or the same as, in this instance) GCC's
behavior where there's only one call on the stack rather than one ctor
calling another ctor.

I think it'd be fine to just remove the XFAIL (& update the bug to mention
this). Might be worth mentioning that, if there are conditions where C1/C2
can't be aliases, this bug will likely manifest there.

- David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20131014/f14bd791/attachment.html>


More information about the cfe-commits mailing list