[PATCH] D102356: [UniqueLinkageName] Use exsiting GlobalDecl object instead of reconstructing one.

Hongtao Yu via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri May 14 16:42:36 PDT 2021


hoy added a comment.

In D102356#2760973 <https://reviews.llvm.org/D102356#2760973>, @dblaikie wrote:

> In D102356#2758371 <https://reviews.llvm.org/D102356#2758371>, @hoy wrote:
>
>> In D102356#2758179 <https://reviews.llvm.org/D102356#2758179>, @dblaikie wrote:
>>
>>> This was previously crashing, I guess? Testing should validate the behavior beyond the crash, though - (presumably there's some more specific behavior than "does not crash" that wasn't being tested for before - that certain names are mangled appropriately or what-have-you)
>>
>> Yes, an assert was triggered related to c++ constructors/destructors while it's not now. Regarding the behavior, c++ constructors/destructors are not static, so I don't expect a behavior change.
>
> ctors/dtors can have internal linkage, if the type has internal linkage (if it's in an anonymous namespace) - but in any case, my point was that there's some specific behavior you're expecting, even if that behavior is "does not get this attribute" - previously no code tested that with this feature enabled the ctor wouldn't get the attribute (because it couldn't've tested that, because what it did was crash) - so testing that would be good.
>
> But testing the attribute does work on the ctor of a type in an anonymous namespace would be suitable too.

Good to know that ctors/dtors can have internal linkage. How do you get that? The C++ standard doesn't allow ctors to be static.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D102356/new/

https://reviews.llvm.org/D102356



More information about the cfe-commits mailing list