Created attachment 58251 [details] Reduced and prepocesed target_struct_map.4.c target_struct_map.4.c from the OpenMP test suite causes an ICE in 14.1.0 with `-foffload=disabled` . Here is a further reduced input: gcc -v -g -fopenmp -foffload=disable -c target_struct_map.4.c -o target_struct_map.4.o -freport-bug -fdump-debug -save-temps Using built-in specs. COLLECT_GCC=gcc Target: x86_64-pc-linux-gnu Configured with: ../configure --silent --enable-silent-rules --prefix=/home/wesarg/opt/gcc-14.1-wo-lto --enable-languages=c,c++,fortran --enable-threads=posix --disable-nls --enable-bootstrap --enable-plugin --enable-default-pie --disable-werror --enable-checking --disable-multilib --enable-__cxa_atexit --with-linker-hash-style=gnu --enable-initfini-array --enable-gnu-indirect-function --enable-cet --silent Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 14.1.0 (GCC) COLLECT_GCC_OPTIONS='-v' '-target_struct_map.4.ig' '-fopenmp' '-c' '-o' 'target_struct_map.4.o' '-freport-bug' '-fdump-debug' '-save-temps' '-mtune=generic' '-march=x86-64' '-pthread' /home/wesarg/opt/gcc-14.1-wo-lto/libexec/gcc/x86_64-pc-linux-gnu/14.1.0/cc1 -E -quiet -v -imultiarch x86_64-linux-gnu -D_REENTRANT target_struct_map.4.c -mtune=generic -march=x86-64 -fopenmp -freport-bug -fdump-debug -g -fworking-directory -fpch-preprocess -o target_struct_map.4.i ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" ignoring nonexistent directory "/home/wesarg/opt/gcc-14.1-wo-lto/lib/gcc/x86_64-pc-linux-gnu/14.1.0/../../../../x86_64-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /home/wesarg/opt/gcc-14.1-wo-lto/lib/gcc/x86_64-pc-linux-gnu/14.1.0/include /usr/local/include /home/wesarg/opt/gcc-14.1-wo-lto/include /home/wesarg/opt/gcc-14.1-wo-lto/lib/gcc/x86_64-pc-linux-gnu/14.1.0/include-fixed/x86_64-linux-gnu /home/wesarg/opt/gcc-14.1-wo-lto/lib/gcc/x86_64-pc-linux-gnu/14.1.0/include-fixed /usr/include/x86_64-linux-gnu /usr/include End of search list. COLLECT_GCC_OPTIONS='-v' '-g' '-fopenmp' '-c' '-o' 'target_struct_map.4.o' '-freport-bug' '-fdump-debug' '-save-temps' '-mtune=generic' '-march=x86-64' '-pthread' /home/wesarg/opt/gcc-14.1-wo-lto/libexec/gcc/x86_64-pc-linux-gnu/14.1.0/cc1 -fpreprocessed target_struct_map.4.i -quiet -dumpbase target_struct_map.4.c -dumpbase-ext .c -mtune=generic -march=x86-64 -g -version -fopenmp -freport-bug -fdump-debug -o target_struct_map.4.s GNU C17 (GCC) version 14.1.0 (x86_64-pc-linux-gnu) compiled by GNU C version 14.1.0, GMP version 6.2.0, MPFR version 4.0.2, MPC version 1.1.0, isl version none GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 Compiler executable checksum: caa98156640761a022c1187cabbd56e6 target_struct_map.4.c: In function 'main': target_struct_map.4.c:41:9: internal compiler error: Segmentation fault 41 | #pragma omp target data map(S.p[:N], S.p, S.a) | ^~~ 0x10023ff crash_signal ../../gcc/toplev.cc:319 0x7f5c91b7108f ??? /build/glibc-e2p3jK/glibc-2.31/signal/../sysdeps/unix/sysv/linux/x86_64/sigaction.c:0 0xcb3353 tree_check(tree_node*, char const*, int, char const*, tree_code) ../../gcc/tree.h:3623 0xcb3353 omp_gather_mapping_groups_1 ../../gcc/gimplify.cc:9687 0xcc6ca2 omp_gather_mapping_groups ../../gcc/gimplify.cc:9714 0xcc6ca2 gimplify_adjust_omp_clauses ../../gcc/gimplify.cc:13837 0xcdf137 gimplify_omp_workshare ../../gcc/gimplify.cc:16948 0xcc10fa gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gimplify.cc:18426 0xcc3d46 gimplify_stmt(tree_node**, gimple**) ../../gcc/gimplify.cc:7578 0xcc279b gimplify_statement_list ../../gcc/gimplify.cc:2249 0xcc279b gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gimplify.cc:18329 0xcc3d46 gimplify_stmt(tree_node**, gimple**) ../../gcc/gimplify.cc:7578 0xcc45b6 gimplify_bind_expr ../../gcc/gimplify.cc:1641 0xcc19d3 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gimplify.cc:18085 0xcc3d46 gimplify_stmt(tree_node**, gimple**) ../../gcc/gimplify.cc:7578 0xcc279b gimplify_statement_list ../../gcc/gimplify.cc:2249 0xcc279b gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gimplify.cc:18329 0xcd9125 gimplify_stmt(tree_node**, gimple**) ../../gcc/gimplify.cc:7578 0xcd9125 gimplify_body(tree_node*, bool) ../../gcc/gimplify.cc:19151 0xcd9576 gimplify_function_tree(tree_node*) ../../gcc/gimplify.cc:19352 Please submit a full bug report, with preprocessed source. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. The bug is not reproducible, so it is likely a hardware or OS problem. Removing either member a or converting p to a fixed length array (p[N]) avoids the ICE