[llvm] r339450 - [MS Demangler] Add conversion operator tests.

Zachary Turner via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 10 12:58:42 PDT 2018


Thanks guys, I'll look into it.

On Fri, Aug 10, 2018 at 12:23 PM Sanjay Patel <spatel at rotateright.com>
wrote:

> I reverted this change at r339463 to try to get the bots back to green. It
> was also failing 'make check' for me locally on macOS. Let me know if I can
> provide any other info.
>
> On Fri, Aug 10, 2018 at 1:20 PM, Matt Morehouse via llvm-commits <
> llvm-commits at lists.llvm.org> wrote:
>
>> Hi Zach,
>>
>> This test is failing:
>> http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/22180
>>
>> llvm-undname: /b/sanitizer-x86_64-linux-fast/build/llvm/lib/Demangle/MicrosoftDemangle.cpp:740: virtual void (anonymous namespace)::Type::outputPre(OutputStream &, (anonymous namespace)::NameResolver &): Assertion `false && "Invalid primitive type!"' failed.
>>
>> Please take a look.
>>
>> On Fri, Aug 10, 2018 at 9:56 AM Zachary Turner via llvm-commits <
>> llvm-commits at lists.llvm.org> wrote:
>>
>>> Author: zturner
>>> Date: Fri Aug 10 09:55:59 2018
>>> New Revision: 339450
>>>
>>> URL: http://llvm.org/viewvc/llvm-project?rev=339450&view=rev
>>> Log:
>>> [MS Demangler] Add conversion operator tests.
>>>
>>> The mangled names were added in the original commit, but
>>> the demangled equivalents weren't, so nothing was actually
>>> being checked.
>>>
>>> Modified:
>>>     llvm/trunk/test/Demangle/ms-conversion-operators.test
>>>
>>> Modified: llvm/trunk/test/Demangle/ms-conversion-operators.test
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Demangle/ms-conversion-operators.test?rev=339450&r1=339449&r2=339450&view=diff
>>>
>>> ==============================================================================
>>> --- llvm/trunk/test/Demangle/ms-conversion-operators.test (original)
>>> +++ llvm/trunk/test/Demangle/ms-conversion-operators.test Fri Aug 10
>>> 09:55:59 2018
>>> @@ -3,19 +3,49 @@
>>>  ; CHECK-NOT: Invalid mangled name
>>>
>>>  ??$?BH at TemplateOps@@QAEHXZ
>>> +; CHECK: int __thiscall TemplateOps::operator<int> int(void)
>>> +
>>>  ??BOps@@QAEHXZ
>>> +; CHECK: int __thiscall Ops::operator int(void)
>>> +
>>>  ??BConstOps@@QAE?BHXZ
>>> +; CHECK: int const __thiscall ConstOps::operator int const(void)
>>> +
>>>  ??BVolatileOps@@QAE?CHXZ
>>> +; CHECK: int volatile __thiscall VolatileOps::operator int
>>> volatile(void)
>>> +
>>>  ??BConstVolatileOps@@QAE?DHXZ
>>> +; CHECK: int const volatile __thiscall ConstVolatileOps::operator int
>>> const volatile(void)
>>> +
>>>  ??$?BN at TemplateOps@@QAENXZ
>>> +; CHECK: double __thiscall TemplateOps::operator<double> double(void)
>>> +
>>>  ??BOps@@QAENXZ
>>> +; CHECK: double __thiscall Ops::operator double(void)
>>> +
>>>  ??BConstOps@@QAE?BNXZ
>>> +; CHECK: double const __thiscall ConstOps::operator double const(void)
>>> +
>>>  ??BVolatileOps@@QAE?CNXZ
>>> +; CHECK: double volatile __thiscall VolatileOps::operator double
>>> volatile(void)
>>> +
>>>  ??BConstVolatileOps@@QAE?DNXZ
>>> +; CHECK: double const volatile __thiscall ConstVolatileOps::operator
>>> double const volatile(void)
>>> +
>>>  ??BCompoundTypeOps@@QAEPAHXZ
>>> +i; CHECK: nt * __thiscall CompoundTypeOps::operator int *(void)
>>> +
>>>  ??BCompoundTypeOps@@QAEPBHXZ
>>> +; CHECK: int const * __thiscall CompoundTypeOps::operator int const
>>> *(void)
>>> +
>>>  ??BCompoundTypeOps@@QAE$$QAHXZ
>>> +; CHECK: int && __thiscall CompoundTypeOps::operator int &&(void)
>>> +
>>>  ??BCompoundTypeOps@@QAE?AU?$Foo at H@@XZ
>>> +; CHECK: struct Foo<int> __thiscall CompoundTypeOps::operator struct
>>> Foo<int>(void)
>>> +
>>>  ??$?BH at CompoundTypeOps@@QAE?AU?$Bar at U?$Foo at H@@@@XZ
>>> -??$?BPAH at TemplateOps@@QAEPAHXZ
>>> +; CHECK: struct Bar<struct Foo<int>> __thiscall
>>> CompoundTypeOps::operator<int> struct Bar<struct Foo<int>>(void)
>>>
>>> +??$?BPAH at TemplateOps@@QAEPAHXZ
>>> +; CHECK: int * __thiscall TemplateOps::operator<int *> int *(void)
>>>
>>>
>>> _______________________________________________
>>> llvm-commits mailing list
>>> llvm-commits at lists.llvm.org
>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180810/349e48d3/attachment.html>


More information about the llvm-commits mailing list