https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88988
Bug ID: 88988
Summary: [8/9 Regression] ICE: Segmentation fault (in
lookup_name_real_1)
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code, openmp
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: asolokha at gmx dot com
Target Milestone: ---
g++-9.0.0-alpha20190120 snapshot (r268107) ICEs when compiling the following
testcase w/ -fopenmp:
template <typename T>
class k6 {
public:
k6 () : y2 ()
{
[&] ()
{
#pragma omp parallel firstprivate (y2)
++ (this)->y2;
} ();
}
T y2;
};
k6<int> v6;
% g++-9.0.0-alpha20190120 -fopenmp -c fsbqsi9o.cpp
fsbqsi9o.cpp: In instantiation of 'k6<T>::k6() [with T = int]':
fsbqsi9o.cpp:16:9: required from here
fsbqsi9o.cpp:8:39: internal compiler error: Segmentation fault
8 | #pragma omp parallel firstprivate (y2)
| ^
0xf9cc9f crash_signal
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/toplev.c:326
0x97af4c tree_check(tree_node*, char const*, int, char const*, tree_code)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/tree.h:3175
0x97af4c lookup_name_real_1
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/name-lookup.c:6395
0x97af4c lookup_name_real(tree_node*, int, int, bool, int, int)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/name-lookup.c:6529
0x9e1757 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:16918
0x9ddfe7 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:16862
0x9de50e tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:17163
0x9ddfe7 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:16862
0x9de50e tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:17163
0x9f9d55 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:16847
0x9f9d55 tsubst_lambda_expr(tree_node*, tree_node*, int, tree_node*)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:18023
0x9e89c8 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:19346
0x9e673f tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:18640
0x9dcb5f tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:17756
0x9dcf9b tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:16876
0x9ddfe7 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:16862
0x9de50e tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:17163
0x9ddfe7 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:16862
0x9de50e tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:17163
0x9dc54e tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190120/work/gcc-9-20190120/gcc/cp/pt.c:16847