https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106673
Bug ID: 106673 Summary: compilation bug on abstract primitive pre'class aspect using for all construct on a string parameter Product: gcc Version: 12.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada Assignee: unassigned at gcc dot gnu.org Reporter: david.sauvage at adalabs dot com Target Milestone: --- gcc version 12.1.0 [1] bug reproduction: use make command on reproducer pre-class-aspect-for-all-on-string-compiler-bug.tar.gz attached, or using git at https://gitlab.com/adalabs/reproducers/-/tree/main/pre-class-aspect-for-all-on-string-compiler-bug +===========================GNAT BUG DETECTED==============================+ | 12.1.0 (x86_64-pc-linux-gnu) GCC error: | | in gnat_to_gnu_entity, at ada/gcc-interface/decl.cc:472 | | Error detected at reproducer.ads:9:38 | reproducer.ads 1 2 package Reproducer is 3 4 type Node_Type is abstract tagged private; 5 6 not overriding 7 procedure Add_Child (Self : in out Node_Type; 8 Name : in String) is abstract 9 with Pre'Class => (for all C of Name => C /= '.'); 10 11 private 12 type Node_Type is abstract tagged null record; 13 end Reproducer; [1] Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=[..]/bin/../libexec/gcc/x86_64-pc-linux-gnu/12.1.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: ../src/configure --prefix=/home/runner/work/GNAT-FSF-builds/GNAT-FSF-builds/sbx/x86_64-linux/gcc/install --with-build-time-tools=/home/runner/work/GNAT-FSF-builds/GNAT-FSF-builds/sbx/x86_64-linux/binutils/install/bin --enable-languages=c,ada,c++ --enable-libstdcxx --enable-libstdcxx-threads --enable-libada --disable-nls --without-libiconv-prefix --disable-libstdcxx-pch --enable-lto --disable-multilib --enable-threads=posix --with-gnu-ld --with-gnu-as --with-mpfr=/home/runner/work/GNAT-FSF-builds/GNAT-FSF-builds/sbx/x86_64-linux/mpfr/install --with-gmp=/home/runner/work/GNAT-FSF-builds/GNAT-FSF-builds/sbx/x86_64-linux/gmp/install --with-mpc=/home/runner/work/GNAT-FSF-builds/GNAT-FSF-builds/sbx/x86_64-linux/mpc/install --with-isl=/home/runner/work/GNAT-FSF-builds/GNAT-FSF-builds/sbx/x86_64-linux/isl/install --build=x86_64-pc-linux-gnu Thread model: posix Supported LTO compression algorithms: zlib