r200797 - Debug info: fix a crasher when when emitting debug info for
Adrian Prantl
aprantl at apple.com
Tue Feb 4 13:59:30 PST 2014
On Feb 4, 2014, at 13:48, David Blaikie <dblaikie at gmail.com> wrote:
>
>
>
> On Tue, Feb 4, 2014 at 1:29 PM, Adrian Prantl <aprantl at apple.com> wrote:
> Author: adrian
> Date: Tue Feb 4 15:29:50 2014
> New Revision: 200797
>
> URL: http://llvm.org/viewvc/llvm-project?rev=200797&view=rev
> Log:
> Debug info: fix a crasher when when emitting debug info for
> not-yet-completed templated types. getTypeSize() needs a complete type.
>
> I assume this test case could be simplified further - is that not the case? Could you explain the sequence of steps that lead to the incomplete type being used here and why the test case tests for a definition when the code causes more cases to be handled as declarations?
It’s a test for a crasher, so the CHECK line is somewhat arbitrary. But since the fix for the crash involves emitting a (temporary) forward declaration for a type, I decided to at least test that the fwd decl doesn’t end up in the debug info.
> (things in the test case that seem overly complicated - two template parameters in Derived/Base, rather than one. A ctor (and out of line at that) in Foo, a recursive call in 'all', etc... )
>
> That said, I have encountered some fairly convoluted test cases - I'm not ruling it out, just want to better understand the potentially necessary complexity here.
done in r200798.
-- adrian
More information about the cfe-commits
mailing list