<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/97153>97153</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
default-visibility class symbol improperly resolved as hidden-visibility
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
20urc3
</td>
</tr>
</table>
<pre>
Hi, trying to compile LibreOffice with (afl) clang I face this issue. From my understanding it's similar to this bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26905 and solely related to Clang. Any feedback?
```
********************************************************************
*
* Running LibreOffice build configuration.
*
********************************************************************
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for product name... LibreOfficeDev
checking for package version... 25.2.0.0.alpha0+
checking for product version... 25.2
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for grep... (cached) /usr/bin/grep
checking for GNU Make... /usr/bin/make
checking for sed... /usr/bin/sed
checking whether to use link-time optimization... no
configure: VCL platform has a usable dynamic loading API: yes
configure: VCL platform uses freetype+fontconfig: yes
configure: VCL platform uses headless plugin: yes
configure: VCL platform uses X11: yes
checking for explicit AFLAGS... no
checking for explicit CFLAGS... -g -O0 -fvisibility=hidden -fsanitize=undefined,address -fno-omit-frame-pointer
checking for explicit CXXFLAGS... -g -O0 -fvisibility=hidden -fsanitize=undefined,address -fno-omit-frame-pointer
checking for explicit OBJCFLAGS... no
checking for explicit OBJCXXFLAGS... no
checking for explicit LDFLAGS... -g -O0 -fvisibility=hidden -fsanitize=undefined,address -fno-omit-frame-pointer
checking for gcc... afl-clang-lto
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether afl-clang-lto accepts -g... yes
checking for afl-clang-lto option to enable C11 features... none needed
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking whether byte ordering is bigendian... no
checking for library containing dlsym... none required
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for library containing backtrace... none required
checking whether to record build config... no
checking whether build target is Release Build... no
checking whether build should auto use hardening compiler flags... no
checking whether to build a Community flavor... yes
checking whether to sign windows build... no
checking for gawk... gawk
checking for gawk... /usr/bin/gawk
checking for bash... /bin/bash
checking for pigz... no
checking for gzip... /usr/bin/gzip
checking for GNU or BSD tar... tar
checking for tar's option to strip components... --strip-components
checking how to build and package galleries... internal src images for desktop
checking build with or without template files... enable all templates
checking for ccache... /usr/bin/ccache
checking gcc home... /usr
checking for afl-clang-lto... /usr/local/bin/afl-clang-lto
checking whether to build with .NET support... yes
checking for dotnet... no
checking whether to build with Java support... yes
checking whether to treat the installation as read-only... no
checking for -isystem ... yes
checking whether the compiler is actually Clang... yes
checking whether Clang is new enough... yes (18.1.8)
checking whether afl-clang-lto is already ccached... no
checking whether ccache afl-clang-lto supports -ggdb2... yes
checking whether to build with additional debug utilities... no
checking whether to do a debug build... yes
checking for -fuse-ld=lld linker support... yes
checking for linker that is used... unknown
checking for -Bsymbolic-functions linker support... found
checking for --gc-sections linker support... found
checking whether ccache afl-clang-lto supports -gsplit-dwarf... yes
checking whether ccache afl-clang-lto supports -Xclang -debug-info-kind=constructor... yes
checking whether ccache afl-clang-lto supports -ggnu-pubnames... yes
checking whether ccache afl-clang-lto supports -Wl,--gdb-index... yes
checking whether to generate debug information... yes
checking whether to compile with optimization flags... no
checking which package format to use... none
checking which help to build... no
checking if we need to build the help index tooling... yes
checking whether to enable xapian-omega support for online help... no
checking whether to include the XML-help support... yes
checking for helppack integration... no integration
checking which lockfile binary to use... internal
checking for getopt.h... yes
checking for paths.h... yes
checking for sys/param.h... yes
checking for utime... yes
checking for utimes... yes
checking for syslog.h... yes
checking whether to turn warnings to errors... no
checking whether to have assert() failures abort even without --enable-debug... yes
checking whether to use ooenv for the instdir installation... yes
checking whether to build the pagein binaries for oosplash... yes
checking whether to enable CPDB support... no
checking whether to enable CUPS support... yes
checking whether cups support is present... checking for cupsPrintFiles in -lcups... yes
checking for cups/cups.h... yes
checking which fontconfig to use... external
checking for fontconfig >= 2.12.0... yes
checking whether we want to fetch tarballs... yes, if we use them
checking whether to include MySpell dictionaries... no
checking whether to use dicts from external paths... yes
checking for spelling dictionary directory... file:///usr/share/hunspell
checking for hyphenation patterns directory... file:///usr/share/hyphen
checking for thesaurus directory... file:///usr/share/mythes
checking whether to enable pch feature... no
checking the GNU Make version... /usr/bin/make 4.3
checking for --hash-style gcc linker support... gnu
checking for perl... /usr/bin/perl
checking the Perl version... Perl 5
checking for required Perl modules... all modules found
checking for pkg-config... (cached) /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for llvm-ar... llvm-ar
checking for llvm-nm... llvm-nm
checking for llvm-ranlib... llvm-ranlib
checking for llvm-objdump... llvm-objdump
checking for llvm-readelf... llvm-readelf
checking for llvm-strip... llvm-strip
checking whether the compiler supports GNU C++... yes
checking whether afl-clang-lto++ accepts -g... yes
checking for afl-clang-lto++ option to enable C++11 features... none needed
checking whether afl-clang-lto++ is already ccached... no
checking how to run the C++ preprocessor... /usr/bin/ccache afl-clang-lto++ -E
checking how to run the C preprocessor... /usr/bin/ccache afl-clang-lto -E
checking size of long... 8
checking size of short... 2
checking size of int... 4
checking size of long long... 8
checking size of double... 8
checking size of void*... 8
checking size of size_t... 8
checking alignment of short... 2
checking alignment of int... 4
checking alignment of long... 8
checking alignment of double... 8
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking whether jumbo sheets are supported... yes
checking whether to enable runtime optimizations... yes
checking for valgrind/valgrind.h... no
checking for sys/sdt.h... no
checking whether ccache afl-clang-lto supports -grecord-gcc-switches... yes
checking whether ccache afl-clang-lto supports -D_FORTIFY_SOURCE=2... yes
checking whether ccache afl-clang-lto supports -D_GLIBCXX_ASSERTIONS... yes
checking whether ccache afl-clang-lto supports -fstack-clash-protection... yes
checking whether ccache afl-clang-lto supports -fcf-protection... yes
checking whether ccache afl-clang-lto supports -mno-avx... yes
checking whether ccache afl-clang-lto supports atomic functions... yes
checking whether ccache afl-clang-lto++ defines __base_class_type_info in cxxabi.h... yes
checking whether ccache afl-clang-lto++ defines __class_type_info in cxxabi.h... yes
checking whether ccache afl-clang-lto++ declares __cxa_allocate_exception in cxxabi.h... yes
checking whether ccache afl-clang-lto++ defines __cxa_eh_globals in cxxabi.h... no
checking whether ccache afl-clang-lto++ defines __cxa_exception in cxxabi.h... no
checking whether ccache afl-clang-lto++ declares __cxa_get_globals in cxxabi.h... yes
checking whether ccache afl-clang-lto++ declares __cxa_current_exception_type in cxxabi.h... yes
checking whether ccache afl-clang-lto++ declares __cxa_throw in cxxabi.h... yes
checking whether ccache afl-clang-lto++ defines __si_class_type_info in cxxabi.h... yes
checking whether ccache afl-clang-lto++ defines __vmi_class_type_info in cxxabi.h... yes
checking what the C++ library is... GNU libstdc++
checking for gperf... /usr/bin/gperf
checking whether gperf is new enough... yes (3.1)
checking which libcmis to use... internal
checking whether ccache afl-clang-lto++ supports C++20... yes (-std=c++20)
checking whether std::atomic can be used without link library... yes
checking whether ccache afl-clang-lto++ supports C++11 without Language Defect 757... yes
checking whether ccache afl-clang-lto++ supports -fno-sized-deallocation... yes
checking whether ccache afl-clang-lto++ supports C++2a constinit sorted vectors... no
checking whether ccache afl-clang-lto++ implements C++ DR P1155R3... yes
checking whether ccache afl-clang-lto++ supports C++20 std::atomic_ref... yes
checking whether ccache afl-clang-lto++ supports -Wdeprecated-copy-dtor... yes
checking whether /usr/bin/ccache afl-clang-lto++ can compile SSE2 intrinsics... yes
checking whether /usr/bin/ccache afl-clang-lto++ can compile SSSE3 intrinsics... yes
checking whether /usr/bin/ccache afl-clang-lto++ can compile SSE4.1 intrinsics... yes
checking whether /usr/bin/ccache afl-clang-lto++ can compile SSE4.2 intrinsics... yes
checking whether /usr/bin/ccache afl-clang-lto++ can compile AVX intrinsics... yes
checking whether /usr/bin/ccache afl-clang-lto++ can compile AVX2 intrinsics... yes
checking whether /usr/bin/ccache afl-clang-lto++ can compile AVX512 intrinsics... yes
checking whether /usr/bin/ccache afl-clang-lto++ can compile F16C intrinsics... yes
checking whether /usr/bin/ccache afl-clang-lto++ can compile FMA intrinsics... yes
checking if STL headers are visibility safe (GCC bug 22482)... yes
checking if ccache afl-clang-lto++ is -fvisibility-inlines-hidden safe (Clang bug 11250)... yes
checking if ccache afl-clang-lto++ has a visibility bug with class-level attributes (GCC bug 26905)... yes
configure: error: Your gcc is not -fvisibility=hidden safe. This is no longer supported.
Error running configure at ./autogen.sh line 321.
```
(tagging @AaronBallman as instructed on LLVM's discord)
Cheers
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzcW91S47gSfhpzo7IrcQhDLriAQObMFrMzNczuslcpWWrbGmTJRz8J4elPSXaME2wnMMOeqq2igNj9I7XU3V-3FKw1ywTARTC9CqbXJ9iaXKqLeGQVmZwkkm4u_sOCeI6M2jCRISMRkUXJOKBblij4kqaMAFozk6MgPscpD-IZIhyLDH1CKSaATM40YlpbiNBCyQIVG2QFBaUNFtQJZSaIP2ikWcE4Vk6H50lshnJjSh1MLoN4EcSLjJAoEzaSKgviRWKzJ8Y5DuKFzuV6mdgsIhkLJgtGg8l1fDYbTREWFGnJgW-QAo4NUCd_7gYYoUuxQSkATTB5CCaLYHQdjC53fp-N6p_2w_hf9NPMaPsP-maFcKvSXt_EMk4RkSJlmVXYMCmil6z_np_WapMcyIOzR2UDvdEGCmQ2JURRhB7Pz5Znp2FJQs6EfQwzYffYcqnN67lSqVCpJLXEIIELz9VakGtYdTFg8oAzQCtQ2q1QFKF4GsXRKBpFmJc5HgXx1YCiPb4OykxBiUyODcqxoBw04lJkiDMB2rta6EcaxAurlXNRJpzbKig7hIF73kOOwpse9RXDOcEkB-qCzXHKPv7-B_qMH7qGV-AH6ODQQDuINdA92nUOJgcftqwGZ4uH0LACkCwNK9hT5S1RhISsOWs3gmByif6c36KSY5NKVaAca4SR1TjhgOhG4IIRxCX2UfLy6yfHsAF9SIzVoFGqANx-C-KrVApTUb9GQA7YrbBGJbcZE69hvR-Pd8l3lv2x5Iwwgy4Xt5cf73Ys00k3b-jCDIVfRihMV0yzhHFmNsHkOmeUgkBhqrFghj1BMLl2CSZlwu2QOaZUuXmEqZChLJgJU4ULCEvJhAE1qPr-_v-n_MvVb_MjTeRIW0MdJr69_sfn5BJ3FCGc8tBjg5Cb_SE2bpQDmm9BhkJrqR604-3eTC1KCim23CBpTWkNSh1G2YZOHElrunzcpil7RDJF8AjEGud4TlvP2NaAsAJElNS6VsxE1mvxZ-ky-QGkGpOfzNDkmwlpW5ZSGe1j17zbBlvGHcsiTAiURqMw67fcLoeLVVK4GAbCR5_5eIxSwMaqasRCCkACgL6If36mhjIZ5f3atKGcJcMUytlygIIJ4wKaPqCHCXNYz7CQjXaR3uBhQZ7q4IisYNrQPort-iUbA0gqCsoDYo0SloGgDIve3cVZorDaOFRmMPOQjXK9KZrVUvBfy1TnepUPWVjF8I4U9_xyj_P5hRshNogD1g1sQKNoFo36DdExXoe7jcIEDo25lWMVEKnoDiLtNFFjWU9osMrAuGF_AzdqQFfu-RGcOpeWU4Rtnd9zrCj40TeOmnKc6UFRRtbSMJrLorCCmY1jW0k1vC-MRK5AQ2smqFzrSkrvlsjw-sG9dH8HXu8jpm7qBOu8pq7o3IOuvcSyp_4RPbFOiPfE-kCaVOjq7totmOMzuCuduKeuYnyOWs6rS78iUoAwfjXC0D8Nn5--gObr1soI2gDoDHMOilWRz-c0gTnSiiBW4MyBK-nyjX4wcn8alTBfD0vl_0prkIHCISR4zgB1mMWcNy-7nIZ4nNthwerFHkdGCMpl0aY_EPh3JHNJMG80HJWsZXvC0e8337dZqz8OUGkEmOPcxYv9Da_wsNgWn1GAjc-jTGiDOffwG2GNFGAaSsE3vZs1ZHWddkBLO0m7QEiMxZxv6q7CIK8ncUwC1giEtNk2MbiiZnwejaPzIJ4dleWdau5mtam3yXA4q2j2ZDQYI8wymsQHzdtaFkwpc7bFHFFIbIascQCSwcFQSCXCNU8Tz7r3SphaDSGnweSac-prq2dgNJRqPJ0vVJl2YdvrsOJByLXo0nOlN0UiOSNhagVx09Id2lJpRVc6DcOMhBpexXfssuiSMxPSNVbp8OocEHRfNeVCb_eQiVSGD0w4yxIptFGWmEPJ6OAOEjYsbeJAdw9kP1LSXzyI52GY0SRkgsLjwW2ZgQDl4mu1q9zsVNEU3oOs23ZmFbJbJftgWmckb7JFpauu_7dIppMjB142XtQpmaWuyHA4-9nbXLzxnN4WyEi5rToGJ1ZnmEdcMixCWUDWRFG_aaXgTFSSDzksE4RbCn4k959vQz-ag17oqJyNfAbNVKsP0n7SaSguyYMv4BImHGZ8tu02G3dhDTCyHITsJTb5Eci_xAoXg5jesCrJDrweKFr1RnPZW-q0k5lVAq2xcnBT-zVVSqqD8TXHK0BYa1AmiF06QSlm3FVyCCdu-WEFosEmYVjtlCoyHByTw8BSglhVSKxOtJSpnYR7ZCJx7CXOgIlqpVmNraTUJa_x5zGbfP71-qq9IYess2X54-vdcaiC2FI3nsM0KhVoEJ5pF6vZUn9VTJiFA3mICRRy96x_I7i3Dss5ot65On947uC1XAEee12hRR9MboLJNYqjcdxXnbXaG2ssfCRLwZDc4ewEc97MIJ7XAcptApNDcThkfN7clcA5osxnR6yOwAdOuqPXKFWyaOZZu2-_WzlFvgze6togyhS4xOZBn4sozVlSg3p1jhUE8SK3wkvoimSbMgdRZYUSGzcc_SrRnr-rkMlBY6vsq6QVG8d2cIOXbt9UHZxOgzvf23bF263_ju44Oo0mnbAnxzoPtdlw8LXHS-TTc7IBinc1HkDtW98N8iso3h6g_zztELttHlQUhaS2LrZclVV_7MVw-y2R_hOG9-qP8FURVlVv_W8fkSgaIrHvgg2RwoKzpCGsPvYRy-QHtUXZUNefe2UDpsDTZ-HV5z5yX4Y3xP7T6_ufQXwVxFev6IJWDK_vhdZ8Lzui1Yuj-6JDgzqydKsbFMqKqi1ec5cKSiUJaF0h9s7WQKfeF6dq-xreIvulVM2eAMnUHw46Iec973Veh4n9s8YtAavS7OmA_INKqLQJhyGKlWQ0iC8HR8qeYGm6KDBnmShAmMEJ7VD1zGqHpm9WO0T9U6vzIWGYt89Iqk2t6w1beShWWasv1dkYWS4-3d4svywWdzffl1efvt-hFeYWXiNm6w0_bJFIpHMAo_1hSu3l0NMFeJnXlBUvjlcHUMEK80y5QjdebP-tsFb3kU3V-qemh-bYUrjqUocZIaFeM0Pyn6yIr5eLL9--f1r8vbz78se3uYN0B5o1BwV-vP10Nb-_X17e3d18-_7py-93PyUw1QaTB_dK52GppKnaIT8nk6S_SlQhZIhXBzoJwzKwkQUjqGkQvV5WHYWrk1SNlssEa1g6k-ml2ZSwZCJ10BmRx0ecsEMV4lEq3kc64VhV4h_xEnMuCTawhEeXa13a_MVzeMRLyJcZlwnmel_4q5y0W3bfuN8mesc4GZi-gf8K2xOrFAjzPAW_1O-hyeRKrn_xwmr2zrt_VbxJQ32EsAVc26NL5n3ewVHOEm0oqd539aJKqPq1-wdf7nnPhPy73rOBSTTuOhjw3TKWkILpw12yI0zXRLt67vGoNYZQG98w3r7qP6nwhJfB5LIOmgQLlPi-AW0aT65a3Jr2zUu9P97xuJF_i0VmcQboGlIgBn2Yfvh5Nf7Oi0ODNKRQB7435aY-e2Pk-_FMMIO0B0Zo5TsDw7hqQAUrSg4OMjZK0PU39HU8nk6_TX7dwEf7i75U8IYjixcG_4tCqcDlFxoSWW5CevCg4viCyO3L7QnA3d1N7DxHMaEZOZDe36ri7mby7jpuTqPxP6Hkva11-ef9-2v4ByYxHb-3ksX4bP7eKj5fHtTAUnT3_dbfHAVVlXfPFwuRxim4LPJxPvd3--P49DwO4lmvrKGYpncuLYbMH2bpsL66uFVVHbc7ZeNxPB29UVl1Lbc1EyfQnxd6aBFyWAFH2BjFEmuqVNlM8mw2mr7Q274-68903D9_S-tvSnoIIE3PrUw3tQh9r75UgYT0nYLnbhnQ-vLijRPriuX6rlKtEWGDoiBeYGtkBiLSub-9jSbxeHujf-87D_G5wVnmhASno0uspLjCnBfYX6pg9dExUCQFur3987O_mEOZdvVvgw-q3_McQOkTejGhs8kMn8DF-MN4dnZ6Pp7FJ_kF_jCanMcxUCAjPD0b02Q2Smaj9JSOMBnPzk7YRTyKT0dn8Wx0PpqM42hMYpIk44TOYDqa0vPgdAQFZjzifFVEUmUn_nsnF7MP4-nkhOMEuPbfdIljh7H8yyCOg-n1ibrwzcnEZjo4HXGmjX6WYpjhcLG9YRq2doLfAKi6POASrZIlKP9dEy35CqizUbVwLa4Tq_jF3jdbmMltEhFZBPHC6a3_uPL3BxATxAs_Wh3Ei2o2q4v4fwEAAP__3D8-ZA">