https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95232
Bug ID: 95232 Summary: [11 Regression] ICE in make_ssa_name_fn, at tree-ssanames.c:279 since r11-283-gf315d1477d5164cb Product: gcc Version: 11.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: jason at gcc dot gnu.org Target Milestone: --- I see the following ICE: $ cat para.ii template <class T> void foo(T argc) {} template <typename T> int tmain(T argc) { typedef double (*chunk_t)[argc[0][0]]; #pragma omp parallel { foo(argc); chunk_t var;(void)var[0][0]; } return 0; } int global; int main (int argc, char **argv) { int a[argc]; #pragma omp parallel shared(global, a) default(none) foo(a[1]), a[1] = global; #pragma omp parallel private(global, a) default(none) #pragma omp parallel shared(global, a) default(none) foo(a[1]), a[1] = global; #pragma omp parallel shared(global, a) default(none) #pragma omp parallel shared(global, a) default(none) foo(a[1]), a[1] = global; return tmain(argv); } $ g++ para.ii -ftrapv -fnon-call-exceptions -Os -fsanitize=undefined -c during IPA pass: inline para.ii: In function ‘int main(int, char**)’: para.ii:31:15: internal compiler error: in make_ssa_name_fn, at tree-ssanames.c:279 31 | return tmain(argv); | ~~~~~^~~~~~ 0x82fa3b make_ssa_name_fn(function*, tree_node*, gimple*, unsigned int) /home/marxin/Programming/gcc/gcc/tree-ssanames.c:279 0x112d344 make_ssa_name /home/marxin/Programming/gcc/gcc/tree-ssanames.h:115 0x112d344 remap_ssa_name /home/marxin/Programming/gcc/gcc/tree-inline.c:258 0x11305ef copy_tree_body_r(tree_node**, int*, void*) /home/marxin/Programming/gcc/gcc/tree-inline.c:1252 0x1389633 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*, tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*)) /home/marxin/Programming/gcc/gcc/tree.c:11956 0x112b7ce remap_type_1 /home/marxin/Programming/gcc/gcc/tree-inline.c:619 0x112bc19 remap_type(tree_node*, copy_body_data*) /home/marxin/Programming/gcc/gcc/tree-inline.c:736 0x112b8a1 remap_type_1 /home/marxin/Programming/gcc/gcc/tree-inline.c:555 0x112bc19 remap_type(tree_node*, copy_body_data*) /home/marxin/Programming/gcc/gcc/tree-inline.c:736 0x112b294 remap_type_1 /home/marxin/Programming/gcc/gcc/tree-inline.c:448 0x112bc19 remap_type(tree_node*, copy_body_data*) /home/marxin/Programming/gcc/gcc/tree-inline.c:736 0x112bd1f remap_decl(tree_node*, copy_body_data*) /home/marxin/Programming/gcc/gcc/tree-inline.c:400 0x112c5ec remap_decls /home/marxin/Programming/gcc/gcc/tree-inline.c:785 0x112e3ba remap_block /home/marxin/Programming/gcc/gcc/tree-inline.c:843 0x112e465 remap_blocks /home/marxin/Programming/gcc/gcc/tree-inline.c:865 0x11378f6 expand_call_inline /home/marxin/Programming/gcc/gcc/tree-inline.c:4963 0x11385f9 gimple_expand_calls_inline /home/marxin/Programming/gcc/gcc/tree-inline.c:5277 0x11385f9 optimize_inline_calls(tree_node*) /home/marxin/Programming/gcc/gcc/tree-inline.c:5450 0xe98b23 inline_transform(cgraph_node*) /home/marxin/Programming/gcc/gcc/ipa-inline-transform.c:736 0xfd779a execute_one_ipa_transform_pass /home/marxin/Programming/gcc/gcc/passes.c:2233 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.