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.