在 2026-8-7 13:55, Jonathan Yong 写道:
On 7/31/26 20:08, Oleg Tolmatcev wrote:
On PE/COFF targets (MinGW, Cygwin), the visibility attribute was
previously ignored with a warning.  This patch makes it functional
by emitting -exclude-symbols directives into the .drectve section,
matching Clang's behavior.  The GNU linker already reads and
respects these directives during auto-export, so hidden/internal
symbols are now correctly excluded from DLL exports.


Please also test for __stdcall and __fastcall for x86 32-bit targets and 
improve testcase to cover it.
The reason for that is, for i686, the symbol that follow `-exclude-symbols:` should have its leading underscore removed, so `_some_cdecl` becomes `-exclude-symbols:some_cdecl`, and `_some_stdcall@8` becomes `some_stdcall@8`, but `@some_fastcall@8` doesn't have a leading underscore so it's `-exclude-symbols:@some_fastcall@`.


--
Best regards,
LIU Hao

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to