From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id F3A8C385357E; Sun, 3 Jul 2022 12:37:21 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org F3A8C385357E From: "mcn at onet dot pl" To: gcc-bugs@gcc.gnu.org Subject: [Bug c/106173] New: -fleading-underscore option inactive although reported as active Date: Sun, 03 Jul 2022 12:37:21 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c X-Bugzilla-Version: og10 (devel/omp/gcc-10) X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: mcn at onet dot pl X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter target_milestone Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jul 2022 12:37:22 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D106173 Bug ID: 106173 Summary: -fleading-underscore option inactive although reported as active Product: gcc Version: og10 (devel/omp/gcc-10) Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: mcn at onet dot pl Target Milestone: --- Compiling a sample C program test.c #include int main() { puts("TEST"); return 0; } with gcc 10.2.1 (on Debian GNU/Linux running on WSL 2) with default options (gcc test.c) works fine, but adding -fleading-underscore option produces an error: gcc -fleading-underscore test.c /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o: in func= tion `_start': (.text+0x20): undefined reference to `main' /usr/bin/ld: /tmp/cc8SXM3o.o: in function `_main': test.c:(.text+0xc): undefined reference to `_puts' collect2: error: ld returned 1 exit status Interestingly, gcc -Q -V test.c shows -fleading-underscore among enabled options. $ gcc -Q -v test.c Using built-in specs. COLLECT_GCC=3Dgcc COLLECT_LTO_WRAPPER=3D/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper OFFLOAD_TARGET_NAMES=3Dnvptx-none:amdgcn-amdhsa:hsa OFFLOAD_TARGET_DEFAULT=3D1 Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion=3D'Debian 10.2.1-6' --with-bugurl=3Dfile:///usr/share/doc/gcc-10/README.Bugs --enable-languages=3Dc,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix= =3D/usr --with-gcc-major-version-only --program-suffix=3D-10 --program-prefix=3Dx86_64-linux-gnu- --enable-shared --enable-linker-build-= id --libexecdir=3D/usr/lib --without-included-gettext --enable-threads=3Dposix --libdir=3D/usr/lib --enable-nls --enable-bootstrap --enable-clocale=3Dgnu --enable-libstdcxx-debug --enable-libstdcxx-time=3Dyes --with-default-libstdcxx-abi=3Dnew --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-= zlib --enable-libphobos-checking=3Drelease --with-target-system-zlib=3Dauto --enable-objc-gc=3Dauto --enable-multiarch --disable-werror --with-arch-32= =3Di686 --with-abi=3Dm64 --with-multilib-list=3Dm32,m64,mx32 --enable-multilib --with-tune=3Dgeneric --enable-offload-targets=3Dnvptx-none=3D/build/gcc-10-Km9U7s/gcc-10-10.2.1/= debian/tmp-nvptx/usr,amdgcn-amdhsa=3D/build/gcc-10-Km9U7s/gcc-10-10.2.1/deb= ian/tmp-gcn/usr,hsa --without-cuda-driver --enable-checking=3Drelease --build=3Dx86_64-linux-gnu --host=3Dx86_64-linux-gnu --target=3Dx86_64-linux-gnu --with-build-config=3Dbootstrap-lto-lean --enable-link-mutex Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 10.2.1 20210110 (Debian 10.2.1-6) COLLECT_GCC_OPTIONS=3D'-Q' '-v' '-mtune=3Dgeneric' '-march=3Dx86-64' /usr/lib/gcc/x86_64-linux-gnu/10/cc1 -v -imultiarch x86_64-linux-gnu test.c -dumpbase test.c -mtune=3Dgeneric -march=3Dx86-64 -auxbase test -version -fasynchronous-unwind-tables -o /tmp/ccFkJ2ej.s GNU C17 (Debian 10.2.1-6) version 10.2.1 20210110 (x86_64-linux-gnu) compiled by GNU C version 10.2.1 20210110, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.0, isl version isl-0.23-GMP GGC heuristics: --param ggc-min-expand=3D100 --param ggc-min-heapsize=3D131= 072 ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/include-fi= xed" ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/lib/gcc/x86_64-linux-gnu/10/include /usr/local/include /usr/include/x86_64-linux-gnu /usr/include End of search list. GNU C17 (Debian 10.2.1-6) version 10.2.1 20210110 (x86_64-linux-gnu) compiled by GNU C version 10.2.1 20210110, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.0, isl version isl-0.23-GMP GGC heuristics: --param ggc-min-expand=3D100 --param ggc-min-heapsize=3D131= 072 options passed: -v -imultiarch x86_64-linux-gnu test.c -mtune=3Dgeneric -march=3Dx86-64 -fasynchronous-unwind-tables options enabled: -fPIC -fPIE -faggressive-loop-optimizations -fallocation-dce -fasynchronous-unwind-tables -fauto-inc-dec -fdelete-null-pointer-checks -fdwarf2-cfi-asm -fearly-inlining -feliminate-unused-debug-symbols -feliminate-unused-debug-types -ffp-int-builtin-inexact -ffunction-cse -fgcse-lm -fgnu-unique -fident -finline-atomics -fipa-stack-alignment -fira-hoist-pressure -fira-share-save-slots -fira-share-spill-slots -fivopts -fkeep-static-consts -fleading-underscore -flifetime-dse -fmath-errno -fmerge-debug-strings -fpeephole -fplt -fprefetch-loop-arrays -freg-struct-return -fsched-critical-path-heuristic -fsched-dep-count-heuristic -fsched-group-heuristic -fsched-interblock -fsched-last-insn-heuristic -fsched-rank-heuristic -fsched-spec -fsched-spec-insn-heuristic -fsched-stalled-insns-dep -fschedule-fusion -fsemantic-interposition -fshow-column -fshrink-wrap-separate -fsigned-zeros -fsplit-ivs-in-unroller -fssa-backprop -fstdarg-opt -fstrict-volatile-bitfields -fsync-libcalls -ftrapping-math -ftree-cselim -ftree-forwprop -ftree-loop-if-convert -ftree-loop-im -ftree-loop-ivcanon -ftree-loop-optimize -ftree-parallelize-loops=3D -ftree-phiprop -ftree-reassoc -ftree-scev-cprop -funit-at-a-time -funwind-tables -fvar-tracking -fvar-tracking-assignments -fzero-initialized-in-bss -m128bit-long-double -m64 -m80387 -malign-stringops -mavx256-split-unaligned-load -mavx256-split-unaligned-store -mfancy-math-387 -mfp-ret-in-387 -mfxsr -mglibc -mieee-fp -mlong-double-80 -mmmx -mno-sse4 -mpush-args -mred-zone -msse -msse2 -mstv -mtls-direct-seg-refs -mvzeroupper Compiler executable checksum: 1f803793fa2e3418c492b25e7d3eac2f main Analyzing compilation unit Performing interprocedural optimizations <*free_lang_data> {heap 876k} {heap 876k} {heap 876k} {heap 1068k} {heap 1068k} {heap 1068k} {heap 1068k}Streaming LTO {heap 1068k} {heap 1068k} {heap 1068k} {heap 1068k} {heap 1068k} {heap 1068= k} {heap 1068k}Assembling functions: {heap 1068k} {heap 1068k} main Time variable usr sys = wall GGC phase setup : 0.00 ( 0%) 0.00 ( 0%) 0.00 ( = 0%) 1240 kB ( 70%) phase parsing : 0.00 ( 0%) 0.01 ( 50%) 0.01 (1= 00%) 460 kB ( 26%) phase opt and generate : 0.00 ( 0%) 0.01 ( 50%) 0.00 ( = 0%) 56 kB ( 3%) preprocessing : 0.00 ( 0%) 0.01 ( 50%) 0.00 ( = 0%) 133 kB ( 8%) integrated RA : 0.00 ( 0%) 0.01 ( 50%) 0.00 ( = 0%) 24 kB ( 1%) symout : 0.00 ( 0%) 0.00 ( 0%) 0.01 (1= 00%) 0 kB ( 0%) TOTAL : 0.00 0.02 0.01=20= =20=20=20=20=20=20 1768 kB COLLECT_GCC_OPTIONS=3D'-Q' '-v' '-mtune=3Dgeneric' '-march=3Dx86-64' as -v --64 -o /tmp/ccrB29rk.o /tmp/ccFkJ2ej.s GNU assembler version 2.35.2 (x86_64-linux-gnu) using BFD version (GNU Binu= tils for Debian) 2.35.2 COMPILER_PATH=3D/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux= -gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/:/= usr/lib/gcc/x86_64-linux-gnu/ LIBRARY_PATH=3D/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-= gnu/10/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../..= /../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/us= r/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../:/lib/:/usr/lib/ COLLECT_GCC_OPTIONS=3D'-Q' '-v' '-mtune=3Dgeneric' '-march=3Dx86-64' /usr/lib/gcc/x86_64-linux-gnu/10/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/10/liblto_plugin.so -plugin-opt=3D/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper -plugin-opt=3D-fresolution=3D/tmp/ccnNiHdk.res -plugin-opt=3D-pass-through= =3D-lgcc -plugin-opt=3D-pass-through=3D-lgcc_s -plugin-opt=3D-pass-through=3D-lc -plugin-opt=3D-pass-through=3D-lgcc -plugin-opt=3D-pass-through=3D-lgcc_s -= -build-id --eh-frame-hdr -m elf_x86_64 --hash-style=3Dgnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gn= u/10 -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/10/../../.. /tmp/ccrB29rk.o -lgcc --push-st= ate --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o COLLECT_GCC_OPTIONS=3D'-Q' '-v' '-mtune=3Dgeneric' '-march=3Dx86-64' To sum up, passing -fleading-underscore option to gcc triggers linking erro= r, although this option is listed among enabled by default. This seems to be a bug.=