Ticket #1862 (closed bug: fixed)
Configure.pl should actually test for gcc -fvisibility=hidden support
Reported by: | doughera | Owned by: | jkeenan |
---|---|---|---|
Priority: | normal | Milestone: | 2.11 |
Component: | configure | Version: | 2.10.0 |
Severity: | medium | Keywords: | |
Cc: | Language: | ||
Patch status: | applied | Platform: |
Description
Currently, Configure.pl tests (in config/auto/warnings.pm) whether the compiler accepts the gcc option -fvisibility=hidden. Independently, in config/auto/gcc.pm, Configure.pl sets attribute((visibility("default")) for gcc versions >= 4.0. Normally, this works fine, since -fvisibility=hidden is not part of the official gcc releases prior to 4.0.
However, in TT #1832 and TT #1255, it looks like users were running a version of gcc-3.4.6 that had been patched to accept -fvisibility=hidden. The net result is that the build failed with linker errors.
Parrot should make the tests consistent for the command line option -fvisibility and the attribute((visibility("default")). Either both should be enabled only for gcc >= 4.0, or both should be enabled only when an appropriate test file can be successfully compiled.