https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100599
Bug ID: 100599
Summary: internal compiler error: Segmentation fault
Product: gcc
Version: 11.1.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: mu11 at yahoo dot com
Target Milestone: ---
Created attachment 50812
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=50812&action=edit
test case for bug
gcc crashes with an internal error.
Using the attached test case:
% g++ -c -std=c++11 x2.cpp
x2.cpp: In substitution of ‘template<class _Rep, class _Period> template<class
_Period2> using __is_harmonic = std::__bool_constant<(std::ratio<_Period::den,
std::duration<_Rep, _Period>::_S_gcd(5, 3)>::den == 1)> [with _Period2 =
_Period2; _Rep = _Rep; _Period = _Period]’:
x2.cpp:92:142: required from here
x2.cpp:83:23: internal compiler error: Segmentation fault
83 | static constexpr long _S_gcd(long __m, long __n) noexcept
| ^~~~~~
0xcbd91f crash_signal
../../gcc-11.1.0/gcc/toplev.c:327
0x7a4921 tsubst(tree_node*, tree_node*, int, tree_node*)
../../gcc-11.1.0/gcc/cp/pt.c:15649
0x7b75f1 tsubst_template_args(tree_node*, tree_node*, int, tree_node*)
../../gcc-11.1.0/gcc/cp/pt.c:13418
0x7afb00 tsubst_aggr_type
../../gcc-11.1.0/gcc/cp/pt.c:13621
0x7ba32e tsubst_function_decl
../../gcc-11.1.0/gcc/cp/pt.c:14020
0x7b0529 tsubst_decl
../../gcc-11.1.0/gcc/cp/pt.c:14513
0x79f1c5 tsubst_copy
../../gcc-11.1.0/gcc/cp/pt.c:16747
0x7a0c90 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
../../gcc-11.1.0/gcc/cp/pt.c:20950
0x7a1199 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
../../gcc-11.1.0/gcc/cp/pt.c:19587
0x7a1199 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
../../gcc-11.1.0/gcc/cp/pt.c:20223
0x7b2954 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
../../gcc-11.1.0/gcc/cp/pt.c:19587
0x7b2954 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
../../gcc-11.1.0/gcc/cp/pt.c:19198
0x7b75f1 tsubst_template_args(tree_node*, tree_node*, int, tree_node*)
../../gcc-11.1.0/gcc/cp/pt.c:13418
0x7afb00 tsubst_aggr_type
../../gcc-11.1.0/gcc/cp/pt.c:13621
0x7a0535 tsubst_qualified_id
../../gcc-11.1.0/gcc/cp/pt.c:16448
0x7a19f6 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
../../gcc-11.1.0/gcc/cp/pt.c:19948
0x7a0b03 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
../../gcc-11.1.0/gcc/cp/pt.c:19587
0x7a0b03 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
../../gcc-11.1.0/gcc/cp/pt.c:19910
0x7b2954 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
../../gcc-11.1.0/gcc/cp/pt.c:19587
0x7b2954 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
../../gcc-11.1.0/gcc/cp/pt.c:19198