https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105660
Bug ID: 105660 Summary: ICE on aarch64 in warn_parm_array_mismatch Product: gcc Version: 12.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: julie.gaspar at sipearl dot com Target Milestone: --- Created attachment 52998 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52998&action=edit preprocessed file of conservar.c //--Description--// While testing the Hydro benchmark on Arm architecture, building the version in Hydro/HydroC/HydroC99_2DMpi from: https://github.com/HydroBench/Hydro.git with gcc 12.1.0, the compilation generates an ICE. Gcc version 11.2.0 can compile this without issue. //--Environnement information--// Target: aarch64-unknown-linux-gnu Configured with: ../gcc-12.1.0/configure --prefix=/opt/local/gcc-12.1.0-full+isl+binutils --with-gmp=/opt/local/gcc-12.1.0-full+isl+binutils --with-mpfr=/opt/local/gcc-12.1.0-full+isl+binutils --with-mpc=/opt/local/gcc-12.1.0-full+isl+binutils --with-isl=/opt/local/gcc-12.1.0-full+isl+binutils --disable-multilib Thread model: posix Supported LTO compression algorithms: zlib gcc version 12.1.0 (GCC) GNU C17 (GCC) version 12.1.0 (aarch64-unknown-linux-gnu) compiled by GNU C version 12.1.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 GNU C17 (GCC) version 12.1.0 (aarch64-unknown-linux-gnu) compiled by GNU C version 12.1.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: 42e82fd3c52b7c6fb0e0f63d24249e6a //--Compiler options--// COLLECT_GCC_OPTIONS='-O3' '-fopenmp' '-g' '-c' '-mlittle-endian' '-mabi=lp64' '-pthread' //--Error output--// $ make hydro /opt/local/gcc-12.1.0-full+isl+binutils/bin/gcc -O3 -save-temps -freport-bug -fopenmp -g -c SplitSurface.c /opt/local/gcc-12.1.0-full+isl+binutils/bin/gcc -O3 -save-temps -freport-bug -fopenmp -g -c cmpflx.c /opt/local/gcc-12.1.0-full+isl+binutils/bin/gcc -O3 -save-temps -freport-bug -fopenmp -g -c compute_deltat.c /opt/local/gcc-12.1.0-full+isl+binutils/bin/gcc -O3 -save-temps -freport-bug -fopenmp -g -c conservar.c conservar.c:65:24: internal compiler error: Segmentation fault 65 | ) { | ^ 0xbeee33 crash_signal ../../gcc-12.1.0/gcc/toplev.cc:322 0x7849bc warn_parm_array_mismatch(unsigned int, tree_node*, tree_node*) ../../gcc-12.1.0/gcc/c-family/c-warn.cc:3607 0x6be303 start_function(c_declspecs*, c_declarator*, tree_node*) ../../gcc-12.1.0/gcc/c/c-decl.cc:9699 0x70ad67 c_parser_declaration_or_fndef ../../gcc-12.1.0/gcc/c/c-parser.cc:2445 0x71212f c_parser_external_declaration ../../gcc-12.1.0/gcc/c/c-parser.cc:1779 0x712c5f c_parser_translation_unit ../../gcc-12.1.0/gcc/c/c-parser.cc:1652 0x712c5f c_parse_file() ../../gcc-12.1.0/gcc/c/c-parser.cc:23357 0x75f5af c_common_parse_file() ../../gcc-12.1.0/gcc/c-family/c-opts.cc:1240 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. Makefile:53: recipe for target 'conservar.o' failed make: *** [conservar.o] Error 1 //--Steps to reproduce--// $ git clone https://github.com/HydroBench/Hydro.git $ cd Hydro/ $ git checkout 7934330edc7f464298bbc25e58e69d1dcfe4d82c $ ln Arch/make_gcc_nompi HydroC/HydroC99_2DMpi/Src/make.inc $ cd HydroC/HydroC99_2DMpi/Src/ #removing unwanted options specific to intel $ sed -i -e 's/-march=corei7-avx//g' make.inc $ sed -i -e 's/CFLAGS += -vec-report3/#CFLAGS += -vec-report3/g' Makefile #making sure of the version of gcc #you can use the following command if needed and replace with the path to your gcc version 12.1.0 # $ sed -i -e 's/= gcc/= path\/to\/wanted\/gcc/g' make.inc $ make hydro