Bug 100488 - [12 Regression] trunk 20210508 fails to build ada on x86_64-linux-gnux32
Summary: [12 Regression] trunk 20210508 fails to build ada on x86_64-linux-gnux32
Status: RESOLVED WORKSFORME
Alias: None
Product: gcc
Classification: Unclassified
Component: ada (show other bugs)
Version: 12.0
: P3 normal
Target Milestone: 12.0
Assignee: Not yet assigned to anyone
URL:
Keywords: ice-on-valid-code
Depends on:
Blocks:
 
Reported: 2021-05-08 13:16 UTC by Matthias Klose
Modified: 2022-01-20 21:00 UTC (History)
3 users (show)

See Also:
Host:
Target: x86_64-linux-gnux32
Build:
Known to work: 11.1.1
Known to fail: 12.0
Last reconfirmed: 2021-05-08 00:00:00


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matthias Klose 2021-05-08 13:16:20 UTC
trunk 20210508 fails to build ada on x86_64-linux-gnux32:

mkdir -p ada/
/<<PKGBUILDDIR>>/build/./prev-gcc/xgcc -B/<<PKGBUILDDIR>>/build/./prev-gcc/ -B/usr/lib/gcc-snapshot/x86_64-linux-gnux32/bin/ -B/usr/lib/
gcc-snapshot/x86_64-linux-gnux32/bin/ -B/usr/lib/gcc-snapshot/x86_64-linux-gnux32/lib/ -isystem /usr/lib/gcc-snapshot/x86_64-linux-gnux3
2/include -isystem /usr/lib/gcc-snapshot/x86_64-linux-gnux32/sys-include   -fchecking=1 -c -g -O2 -fchecking=1  -gnatpg -gnata -W -Wall 
-nostdinc -I- -I. -Iada/generated -Iada -Iada/gcc-interface -I../../src/gcc/ada -I../../src/gcc/ada/gcc-interface -Iada/libgnat -I../../
src/gcc/ada/libgnat ada/einfo-entities.adb -o ada/einfo-entities.o
+===========================GNAT BUG DETECTED==============================+
| 12.0.0 20210508 (experimental) [master revision 292da5c58da:d8763feb89a:62d87a321b29f9febdacc6220367021d98db3057] (x86_64-linux-gnux32
) |
| Assert_Failure nlists.adb:385                                            |
| Error detected at einfo-entities.adb:49:4                                |
| Please submit a bug report; see https://gcc.gnu.org/bugs/ .              |
| Use a subject line meaningful to you and us to track the bug.            |
| Include the entire contents of this bug box in the report.               |
| Include the exact command that you entered.                              |
| Also include sources listed below.                                       |
+==========================================================================+

Please include these source files with error report
Note that list may not be accurate in some cases,
so please double check that the problem can still
be reproduced with the set of files listed.
Consider also -gnatd.n switch (see debug.adb).

../../src/gcc/ada/gcc-interface/system.ads
ada/einfo-entities.adb
ada/generated/einfo-entities.ads
../../src/gcc/ada/einfo.ads
../../src/gcc/ada/namet.ads
../../src/gcc/ada/alloc.ads
../../src/gcc/ada/hostparm.ads
../../src/gcc/ada/types.ads
../../src/gcc/ada/libgnat/unchconv.ads
../../src/gcc/ada/libgnat/unchdeal.ads
../../src/gcc/ada/table.ads
ada/snames.ads
../../src/gcc/ada/stand.ads
../../src/gcc/ada/uintp.ads
../../src/gcc/ada/urealp.ads
ada/generated/seinfo.ads
../../src/gcc/ada/output.ads
../../src/gcc/ada/libgnat/s-os_lib.ads
../../src/gcc/ada/libgnat/s-string.ads
../../src/gcc/ada/libgnat/ada.ads
../../src/gcc/ada/libgnat/a-uncdea.ads
../../src/gcc/ada/sinfo.ads
ada/generated/sinfo-nodes.ads
../../src/gcc/ada/atree.ads
../../src/gcc/ada/einfo-utils.ads
../../src/gcc/ada/libgnat/s-stalib.ads
../../src/gcc/ada/libgnat/a-unccon.ads
../../src/gcc/ada/libgnat/s-exctab.ads
../../src/gcc/ada/libgnat/s-unstyp.ads
../../src/gcc/ada/libgnat/s-conca2.ads
../../src/gcc/ada/libgnat/s-assert.ads
../../src/gcc/ada/gcc-interface/a-assert.ads

compilation abandoned
make[5]: *** [../../src/gcc/ada/gcc-interface/Make-lang.in:139: ada/einfo-entities.o] Error 1
make[5]: *** Waiting for unfinished jobs....
make[5]: Leaving directory '/<<PKGBUILDDIR>>/build/gcc'
make[4]: *** [Makefile:4864: all-stage3-gcc] Error 2
make[4]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[3]: *** [Makefile:27997: stage3-bubble] Error 2
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[2]: *** [Makefile:28061: bootstrap] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/build'

Configured with: -v
         --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++
         --prefix=/usr/lib/gcc-snapshot
         --with-gcc-major-version-only
         --program-prefix=
         --enable-shared
         --enable-linker-build-id
         --disable-nls
         --enable-clocale=gnu
         --enable-libstdcxx-debug
         --enable-libstdcxx-time=yes
         --with-default-libstdcxx-abi=new
         --enable-gnu-unique-object
         --disable-vtable-verify
         --enable-plugin
         --with-system-zlib
         --enable-libphobos-checking=release
         --with-target-system-zlib=auto
         --enable-objc-gc=auto
         --enable-multiarch
         --disable-werror
         --enable-cet
         --with-abi=mx32
         --with-multilib-list=mx32,m64,m32
         --enable-multilib
         --enable-checking=yes
         --build=x86_64-linux-gnux32
         --host=x86_64-linux-gnux32
         --target=x86_64-linux-gnux32
Comment 1 Eric Botcazou 2021-05-08 14:31:01 UTC
This looks like a miscompilation of the stage #2 compiler, so probably no way to debug this except on a x32 machine.
Comment 2 Matthias Klose 2021-05-10 07:52:28 UTC
Corresponding Debian issue: https://bugs.debian.org/988305

Debian's kernel support for x32 syscalls can be activated, and then you can install a x32 chroot. See https://wiki.debian.org/X32Port.  Ubuntu's kernel also has the x32 syscalls.
Comment 3 Eric Botcazou 2021-06-29 09:18:38 UTC
Can you retry with current trunk?  There have been several fixes.
Comment 4 Matthias Klose 2021-06-30 14:39:41 UTC
just retried with trunk 20210630, the issue is still there.
Comment 5 Richard Biener 2022-01-17 14:56:01 UTC
Can you try current trunk again?
Comment 6 Matthias Klose 2022-01-20 21:00:25 UTC
this works now on the trunk