Now
MAIN commitmail json YAML
While visibility "protected" is nominaly supported by gcc 4.0 and 4.1
it does not actually work - the compiler does not emmit ".protected"
asm statements for used references to protected symbols, which then
causes the linker to fail and/or produce unloadable libraries.
This recently happened to port vax by the locale changes.
Backporting a fix (ASM_OUTPUT_EXTERNAL in gcc target config) is not
feasible.
So: define __dso_protected only starting with gcc 4.2.
it does not actually work - the compiler does not emmit ".protected"
asm statements for used references to protected symbols, which then
causes the linker to fail and/or produce unloadable libraries.
This recently happened to port vax by the locale changes.
Backporting a fix (ASM_OUTPUT_EXTERNAL in gcc target config) is not
feasible.
So: define __dso_protected only starting with gcc 4.2.