https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94321

--- Comment #2 from Iain Buclaw <ibuclaw at gdcproject dot org> ---
(In reply to Rainer Orth from comment #0)
> As originally reported in
> 
> https://gcc.gnu.org/pipermail/gcc-patches/2020-March/542177.html
> 
> [which didn't get Cc'ed to you due to the abominable header rewriting]:
> 
> The new gdc.dg/pr92216.d testcase FAILs on 32-bit Solaris/SPARC and x86 (and,
> I suppose, on every non-64-bit target):
> 
> +FAIL: gdc.dg/pr92216.d -O0 scan-assembler
> _DT16_D7imports7pr922161B8__mixin24getSMFZPv[: \\t\\n]
> +FAIL: gdc.dg/pr92216.d -O0 -frelease scan-assembler
> _DT16_D7imports7pr922161B8__mixin24getSMFZPv[: \\t\\n]
> +FAIL: gdc.dg/pr92216.d -O0 -frelease -g scan-assembler
> _DT16_D7imports7pr922161B8__mixin24getSMFZPv[: \\t\\n]
> +FAIL: gdc.dg/pr92216.d -O0 -g scan-assembler
> _DT16_D7imports7pr922161B8__mixin24getSMFZPv[: \\t\\n]
> 
> Same at -O[1-3s].  While the 64-bit version contains the expected
> 
> _DT16_D7imports7pr922161B8__mixin24getSMFZPv
> 
> the 32-bit one has
> 
> _DT8_D7imports7pr922161B8__mixin24getSMFZPv
> 
> I can't tell for certain if it's enough to allow for those two variants
> or if more is needed.
>

That discrepancy is the encoded this pointer offset.  I didn't consider that
this information was present when I added the test.


> Btw., I noticed that binutils 2.34 c++filt -s dlang cannot demangle those
> symbols.  Is this expected?

Yes, these thunk symbols are a non-standard extension.

Reply via email to