DLL symbol identity

Benjamin Thaut via Digitalmars-d digitalmars-d at puremagic.com
Mon May 11 10:18:54 PDT 2015


Am 11.05.2015 um 16:21 schrieb Martin Nowak:
>
> Can you elaborate a bit on that?
> How would you run into such an ODR violation, by linking against
> multiple import libraries that contain the same symbol?

I will post some code examples later. Code usually shows the issue best.

>
> Last time we thought about this we came to the conclusion that global
> uniqueness for symbols isn't possible, even on Unix when you have 2
> comdat/weak typeinfos for template classes in 2 different shared
> libraries but not in the executable. I suggested that we could wrap
> typeinfos for template types in something like TypeInfo_Comdat that
> would do a equality comparison based on name and type size.

Do you have a code example for this issue? I wasn't able to produce a 
duplicate symbol with linux shared libraries yet.



More information about the Digitalmars-d mailing list