[Bug 1896458] Re: newer gcc packages in toolchain ppa broke ubsan
Launchpad Bug Tracker
1896458 at bugs.launchpad.net
Mon Mar 7 10:42:46 UTC 2022
This bug was fixed in the package gcc-9 - 9.4.0-1ubuntu1~20.04
---------------
gcc-9 (9.4.0-1ubuntu1~20.04) focal-proposed; urgency=medium
* SRU: LP: #1930125. Update to the GCC 9.4.0 release.
gcc-9 (9.4.0-1ubuntu1) impish; urgency=medium
* GCC 9.4.0 release.
gcc-9 (9.4.0-1) unstable; urgency=medium
* GCC 9.4.0 release.
* Refresh patches.
gcc-9 (9.3.0-26ubuntu1) impish; urgency=medium
* Merge with Debian; remaining changes:
- Build from upstream sources.
gcc-9 (9.3.0-26) experimental; urgency=medium
* GCC 9.4.0 release candidate 2.
* Update to git 20210527 from the gcc-9 branch.
- Fix PR c++/97938, PR c++/52625, PR c++/80456, PR sanitizer/100379,
PR c++/100797, PR c++/95719.
* Drop the PR bootstrap/87338 patch, applied upstream.
gcc-9 (9.3.0-25ubuntu1) impish; urgency=medium
* Merge with Debian; remaining changes:
- Build from upstream sources.
gcc-9 (9.3.0-25) experimental; urgency=medium
* GCC 9.4.0 release candidate.
* Update to git 20210519 from the gcc-9 branch.
- Fix PR target/97865 (Darwin), PR target/44107 (Darwin),
PR target/48097 (Darwin), PR tree-optimization/92608, PR bootstrap/87338,
PR target/100182 (x86), PR tree-optimization/99954,
PR rtl-optimization/99929, PR target/98136 (AArch64),
PR rtl-optimization/96796, PR tree-optimization/98302,
PR middle-end/95694, PR c++/95719, PR fortran/100154,
PR target/98952 (PPC), PR libstdc++/100259, PR target/99988 (AArch64),
PR target/99037 (AArch64), PR target/100441 (AArch64),
PR rtl-optimization/100225, PR rtl-optimization/84878,
PR target/100402 (x86), PR rtl-optimization/100263,
PR tree-optimization/98786, PR rtl-optimization/100230,
PR tree-optimization/100053, PR rtl-optimization/98144,
PR target/100375 (nvptx), PR target/100302 (AArch64),
PR rtl-optimization/100254, PR debug/100255, PR rtl-optimization/100148,
PR tree-optimization/91914, PR fortran/100274, PR c/100450,
PR rtl-optimization/80960, PR tree-optimization/96513,
PR tree-optimization/96597, PR tree-optimization/88240,
PR tree-optimization/100566.
* Fix running the libstdc++-v3 tests against the installed libstdc++6,
when the libstdc++6 package is not built from this source.
* Don't apply the arm-multilib-soft patch when building without
armhf/armsf multilib packages.
gcc-9 (9.3.0-24ubuntu1) impish; urgency=medium
* Merge with Debian; remaining changes:
- Build from upstream sources.
gcc-9 (9.3.0-24) experimental; urgency=medium
* Update to git 20210422 from the gcc-9 branch.
- Fix PR driver/47785, PR tree-optimization/99694, PR c/99224, PR lto/96591,
PR tree-optimization/97009, PR tree-optimization/99856, PR ipa/99466,
PR target/97329 (PPC), PR target/99704 (x86), PR target/99702 (RISCV),
PR ipa/98078, PR tree-optimization/98758, PR tree-optimization/98282,
PR tree-optimization/93964, PR fortran/99840, PR fortran/99688,
PR fortran/99545, PR lto/96385, PR bootstrap/99983, PR libstdc++/99985,
PR libstdc++/96029, PR libstdc++/96029, PR target/99767, PR lto/99849,
PR rtl-optimization/99905, PR debug/99830, PR rtl-optimization/98601,
PR rtl-optimization/99863, PR tree-optimization/99777, PR debug/99334,
PR debug/99388, PR target/99542 (AArch64), PR middle-end/93235,
PR tree-optimization/99225, PR tree-optimization/99204, PR ipa/99034,
PR tree-optimization/99079, PR c++/99035, PR middle-end/99007,
PR middle-end/97487, PR middle-end/97971, PR debug/98331,
PR target/98853 (AArch64), PR target/98681 (AArch64), PR testsuite/97301,
PR tree-optimization/90248, PR c++/98556, PR tree-optimization/98474,
PR c++/98353, PR middle-end/98183, PR middle-end/98205, PR c/99324,
PR target/98100, PR target/98063 (x86), PR debug/97599, PR c++/98187,
PR rtl-optimization/97386, PR sanitizer/97294, PR c/99990, PR c/99588,
PR c/99136, PR c/97958, PR c++/95468, PR c++/96282, PR c++/64194,
PR c++/99833, PR c++/99790, PR c++/99745, PR c++/99650, PR c++/99613,
PR c++/82959, PR c++/95451, PR sanitizer/99106, PR c++/99033,
PR c++/97878, PR c++/33661, PR c++/98847, PR sanitizer/95693,
PR c++/98672, PR c++/98187, PR c++/98072, PR c++/97663, PR d/98457,
PR jit/100096, PR bootstrap/97163, PR sanitizer/100114,
PR libstdc++/100180, PR libstdc++/99181, PR libstdc++/99181,
PR libstdc++/90945, PR libstdc++/94854, PR libstdc++/99533,
PR libstdc++/99536, PR libstdc++/82584, PR libstdc++/99805,
PR libstdc++/97362, PR libstdc++/97570, PR libstdc++/98319,
PR libstdc++/99077, PR libstdc++/99058.
* Fix PR sanitizer/100114, taken from the trunk.
* Starting with Ubuntu impish, don't build arm multilib packages.
gcc-9 (9.3.0-23ubuntu2) hirsute; urgency=medium
* Update to git 20210416 from the gcc-9 branch.
- Fix PR driver/47785, PR tree-optimization/99694, PR c/99224, PR lto/96591,
PR tree-optimization/97009, PR tree-optimization/99856, PR ipa/99466,
PR target/97329 (PPC), PR target/99704 (x86), PR target/99702 (RISCV),
PR ipa/98078, PR tree-optimization/98758, PR tree-optimization/98282,
PR tree-optimization/93964, PR fortran/99840, PR fortran/99688,
PR fortran/99545, PR lto/96385, PR bootstrap/99983, PR libstdc++/99985,
PR libstdc++/96029, PR libstdc++/96029.
gcc-9 (9.3.0-23ubuntu1) hirsute; urgency=medium
* Merge with Debian; remaining changes:
- Build from upstream sources.
gcc-9 (9.3.0-23) experimental; urgency=medium
* Update to git 20210316 from the gcc-9 branch.
- Fix PR go/99458, PR target/85074 (PA), PR target/99234 (x86),
PR target/99234 (x86), PR ada/99264, PR c/99137, PR c++/98810,
PR c++/95675, PR c++/90333, PR d/99337, PR fortran/99124,
PR fortran/99060, PR libfortran/99218, PR fortran/99545.
* Don't strip the sanitizer libraries, these are only used for debugging.
LP: #1894166.
* Fix --as-needed specs for -fsanitize=* options for backports.
LP: #1896458.
* Revert the PR ada/99264 fix, causing an ABI breakage in libgnat.
* debian/ada/check_ali_update.sh: Fix syntax errors.
Always run the script.
* Fix lib*gcc* dependencies for backports.
gcc-9 (9.3.0-22) unstable; urgency=medium
* Update to git 20210207 from the gcc-9 branch.
- Fix PR tree-optimization/97236, PR target/97528 (ARM), PR d/98921.
* Revert the fix for PR c++/95158, causing PR target/98032.
gcc-9 (9.3.0-21ubuntu1) hirsute; urgency=medium
* Merge with Debian; remaining changes:
- Build from upstream sources.
- Revert the fix for PR c++/95158, causing PR target/98032.
gcc-9 (9.3.0-21) unstable; urgency=medium
* Update to git 20210202 from the gcc-9 branch.
- Fix PR lto/85574, PR tree-optimization/97627, PR target/98618 (AArch64),
PR ada/98228, PR ada/98740, PR c++/63707, PR fortran/86470,
PR fortran/98517, PR fortran/93833, PR fortran/98022, PR fortran/98022,
PR fortran/91640, PR libgomp/65099, PR d/98806, PR d/98921,
PR libstdc++/98605, PR libstdc++/96083, PR libstdc++/65480,
PR libstdc++/68735, PR libstdc++/91997.
* Fix PR target/97528, taken from the gcc-10 branch.
* PR sanitizer/98699: Don't enable --as-needed with -fsanitize=* options.
* Use --push-state/--pop-state for gold everywhere.
* Explicitly use autoconf2.69 when available.
gcc-9 (9.3.0-20) unstable; urgency=medium
* Update to git 20210110 from the gcc-9 branch.
- Fix PR testsuite/90806, PR target/96793 (x86), PR target/96793 (x86),
PR rtl-optimization/97421, PR target/96793 (x86), PR target/98086 (x86),
PR tree-optimization/96075, PR middle-end/96369, PR middle-end/97554,
PR tree-optimization/97812, PR tree-optimization/97255,
PR tree-optimization/97081, PR tree-optimization/96579,
PR tree-optimization/96370, PR tree-optimization/96514,
PR target/97939 (SPARC), PR target/96607 (SPARC), PR ada/98230,
PR d/98277, PR fortran/96325, PR fortran/83118, PR fortran/96012,
PR fortran/92587, PR fortran/96320, PR fortran/94246, PR fortran/96100,
PR fortran/96101, PR fortran/98307, PR fortran/95342, PR libstdc++/98001.
gcc-9 (9.3.0-19ubuntu2) hirsute; urgency=medium
* Revert the fix for PR c++/95158, causing PR target/98032.
gcc-9 (9.3.0-19ubuntu1) hirsute; urgency=medium
* Merge with Debian; remaining changes:
- Build from upstream sources.
gcc-9 (9.3.0-19) unstable; urgency=medium
* Update to git 20201125 from the gcc-9 branch.
- Fix PR c/96545, PR middle-end/95903, PR c/94755, PR c++/97918,
PR target/97535 (AArch64), PR target/97682 (RISCV), PR target/97685 (x86),
PR rtl-optimization/97439, PR ipa/97404, PR ipa/97295, PR ipa/97295,
PR target/97349 (AArch64), PR target/97150 (AArch64),
PR target/96313 (AArch64), PR gcov-profile/97193, PR gcov-profile/64636,
PR gcov-profile/97069, PR target/97184 (x86), PR target/71233 (AArch64),
PR middle-end/97073, PR target/97032 (x86), PR tree-optimization/97053,
PR target/94710 (PPC), PR debug/96729, PR tree-optimization/96722,
PR fortran/93553, PR middle-end/96459, PR middle-end/96426,
PR target/96174 (x86), PR tree-optimization/95857, PR middle-end/95810,
PR middle-end/95108, PR debug/95080, PR target/9495 (RISCV),
PR rtl-optimization/94873, PR target/94832 (x86), PR target/94826 (PPC),
PR target/94820 (AArch64), PR tree-optimization/94809,
PR target/94780 (x86), PR target/94710, PR c/94705, PR c/94641,
PR rtl-optimization/94618, PR tree-optimization/94621,
PR bootstrap/89494, PR tree-optimization/94524, PR target/94438 (x86),
PR target/97028 (x86), PR ipa/94947, PR middle-end/94964,
PR tree-optimization/95049, PR tree-optimization/95133,
PR tree-optimization/95717,
PR c++/95158, PR c++/88115, PR libstdc++/97273, PR c++/96862,
PR c++/95328, PR c++/94951, PR c++/94742, PR c++/94571, PR c++/94325,
PR target/85486, PR fortran/93553, PR middle-end/96459,
PR libstdc++/94936, PR libstdc++/97798, PR libstdc++/97731,
PR libstdc++/97132, PR libstdc++/97167, PR libstdc++/96803,
PR libstdc++/96803, PR libstdc++/92978, PR libstdc++/94681,
PR libstdc++/94681, PR libstdc++/97101, PR libstdc++/94160,
PR fortran/95847, PR fortran/97652, PR fortran/97272, PR fortran/95614,
PR fortran/95614, PR fortran/96041, PR fortran/93423, PR target/85486,
PR fortran/93553, PR middle-end/96459.
* Bump standards version.
gcc-9 (9.3.0-18ubuntu1) groovy; urgency=medium
* Merge with Debian; remaining changes:
- Build from upstream sources.
- Disable the LTO build on arm64, armhf for now, takes 24+ hours ...
* Update to git 20200914 from the gcc-9 branch.
- Fix PR ipa/94947, PR middle-end/94964, PR tree-optimization/95049,
PR tree-optimization/95133, PR tree-optimization/95717,
PR libstdc++/94033.
gcc-9 (9.3.0-18) unstable; urgency=medium
* Update to git 20200911 from the gcc-9 branch.
- Fix PR target/92923 (PPC), PR fortran/95882, PR fortran/96486,
PR libstdc++/89510, PR libstdc++/71960, PR libstdc++/96766,
PR libstdc++/89760, PR libstdc++/95749.
gcc-9 (9.3.0-17ubuntu1) groovy; urgency=medium
* Merge with Debian; remaining changes:
- Build from upstream sources.
- Disable the LTO build on arm64, armhf for now, takes 24+ hours ...
-- Matthias Klose <doko at ubuntu.com> Tue, 01 Jun 2021 13:16:34 +0200
** Changed in: gcc-9 (Ubuntu Focal)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-9 in Ubuntu.
https://bugs.launchpad.net/bugs/1896458
Title:
newer gcc packages in toolchain ppa broke ubsan
Status in gcc-9 package in Ubuntu:
Fix Released
Status in gcc-9 source package in Focal:
Fix Released
Status in gcc-9 source package in Groovy:
Fix Committed
Bug description:
$ gcc -fsanitize=undefined /dev/null
/usr/bin/ld: unrecognized option '--push-state--no-as-needed'
/usr/bin/ld: use the --help option for usage information
collect2: error: ld returned 1 exit status
$ gcc-9 -fsanitize=undefined /dev/null
/usr/bin/ld: unrecognized option '--push-state--no-as-needed'
/usr/bin/ld: use the --help option for usage information
collect2: error: ld returned 1 exit status
$ gcc -static-libubsan -fsanitize=undefined /dev/null
/dev/null: file not recognized: File truncated
collect2: error: ld returned 1 exit status
$ gcc --version
gcc (Ubuntu 5.5.0-12ubuntu1~16.04) 5.5.0 20171010
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ gcc-9 --version
gcc-9 (Ubuntu 9.3.0-10ubuntu2~16.04) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
==========================
the issue is caused by
$ gcc -dumpspecs | grep push
%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared-libgcc:-lgcc --push-state --as-needed -lgcc_s --pop-state}%{shared-libgcc:-lgcc_s%{!shared: -lgcc}}}}
%{!fsyntax-only:%{!c:%{!M:%{!MM:%{!E:%{!S: %(linker) %{!fno-use-linker-plugin:%{!fno-lto: -plugin %(linker_plugin_file) -plugin-opt=%(lto_wrapper) -plugin-opt=-fresolution=%u.res %{!nostdlib:%{!nodefaultlibs:%:pass-through-libs(%(link_gcc_c_sequence))}} }}%{flto|flto=*:%<fcompare-debug*} %{flto} %{fno-lto} %{flto=*} %l %{no-pie:} %{pie:-pie} %{fuse-ld=*:-fuse-ld=%*} %{gz*:%e-gz is not supported in this configuration} -z relro %X %{o*} %{e*} %{N} %{n} %{r} %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!nostartfiles:%S}} %{!nostdlib:%{fvtable-verify=std: -lvtv -u_vtable_map_vars_start -u_vtable_map_vars_end} %{fvtable-verify=preinit: -lvtv -u_vtable_map_vars_start -u_vtable_map_vars_end}} %{static:} %{L*} %(mfwrap) %(link_libgcc) %{!nostdlib:%{!nodefaultlibs:%{%:sanitize(address):%{!shared:libasan_preinit%O%s} %{static-libasan:%{!shared:-Bstatic --whole-archive -lasan --no-whole-archive -Bdynamic}}%{!static-libasan:%{!fuse-ld=gold:--push-state} --no-as-needed -lasan %{fuse-ld=gold:--as-needed;:--pop-state}}} %{%:sanitize(thread):%{static-libtsan:%{!shared:-Bstatic --whole-archive -ltsan --no-whole-archive -Bdynamic}}%{!static-libtsan:%{!fuse-ld=gold:--push-state} --no-as-needed -ltsan %{fuse-ld=gold:--as-needed;:--pop-state}}} %{%:sanitize(leak):%{static-liblsan:%{!shared:-Bstatic --whole-archive -llsan --no-whole-archive -Bdynamic}}%{!static-liblsan:%{!fuse-ld=gold:--push-state} --no-as-needed -llsan %{fuse-ld=gold:--as-needed;:--pop-state}}}}} %o %{!nostdlib:%{!nodefaultlibs:%{mmpx:%{fcheck-pointer-bounds: %{static:--whole-archive -lmpx --no-whole-archive %:include(libmpx.spec)%(link_libmpx)} %{!static:%{static-libmpx:-Bstatic --whole-archive} %{!static-libmpx:--push-state --no-as-needed} -lmpx %{!static-libmpx:--pop-state} %{static-libmpx:--no-whole-archive -Bdynamic %:include(libmpx.spec)%(link_libmpx)}}}}%{mmpx:%{fcheck-pointer-bounds:%{!fno-chkp-use-wrappers: %{static:-lmpxwrappers} %{!static:%{static-libmpxwrappers:-Bstatic} -lmpxwrappers %{static-libmpxwrappers: -Bdynamic}}}}}}} %{mmpx:%{fcheck-pointer-bounds:%{!static:%:include(libmpx.spec)%(link_mpx)}}} %{fopenacc|fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)} %{fcilkplus:%:include(libcilkrts.spec)%(link_cilkrts)} %{fgnu-tm:%:include(libitm.spec)%(link_itm)} %(mflib) %{fsplit-stack: --wrap=pthread_create} %{fprofile-arcs|fprofile-generate*|coverage:-lgcov} %{!nostdlib:%{!nodefaultlibs:%{%:sanitize(address): %{static-libasan:%:include(libsanitizer.spec)%(link_libasan)} %{static:%ecannot specify -static with -fsanitize=address}} %{%:sanitize(thread): %{static-libtsan:%:include(libsanitizer.spec)%(link_libtsan)} %{static:%ecannot specify -static with -fsanitize=thread}} %{%:sanitize(undefined):%{static-libubsan:-Bstatic} %{!static-libubsan:%{!fuse-ld=gold:--push-state }--no-as-needed} -lubsan %{static-libubsan:-Bdynamic} %{!static-libubsan:%{fuse-ld=gold:--as-needed;:--pop-state}} %{static-libubsan:%:include(libsanitizer.spec)%(link_libubsan)}} %{%:sanitize(leak): %{static-liblsan:%:include(libsanitizer.spec)%(link_liblsan)}}}} %{!nostdlib:%{!nodefaultlibs:%(link_ssp) %(link_gcc_c_sequence)}} %{!nostdlib:%{!nostartfiles:%E}} %{T*} }}}}}}
================
specifically by
%{!static-libubsan:%{!fuse-ld=gold:--push-state }--no-as-needed}
with space on wrong side of closing brace
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gcc-9/+bug/1896458/+subscriptions
More information about the foundations-bugs
mailing list