[prev in list] [next in list] [prev in thread] [next in thread]
List: gcc-bugs
Subject: [Bug c++/85147] New: [6/7/8 Regression] ICE with invalid variadic template-template parameter
From: "reichelt at gcc dot gnu.org" <gcc-bugzilla () gcc ! gnu ! org>
Date: 2018-03-31 20:50:01
Message-ID: bug-85147-4 () http ! gcc ! gnu ! org/bugzilla/
[Download RAW message or body]
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85147
Bug ID: 85147
Summary: [6/7/8 Regression] ICE with invalid variadic
template-template parameter
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Keywords: error-recovery, ice-on-invalid-code
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: reichelt at gcc dot gnu.org
Target Milestone: ---
The following invalid code snippet triggers an ICE since GCC 6.1.0:
====================================================
template<typename T> struct A
{
template<template<...T> class...> struct B {};
};
A<int>::B<> b;
====================================================
bug.cc:3:21: error: expected identifier before '...' token
template<template<...T> class...> struct B {};
^~~
bug.cc: In instantiation of 'struct A<int>':
bug.cc:6:7: required from here
bug.cc:3:44: internal compiler error: in fixed_parameter_pack_p_1, at
cp/pt.c:5113
template<template<...T> class...> struct B {};
^
0x630249 fixed_parameter_pack_p_1
../../gcc/gcc/cp/pt.c:5113
0x94c1f9 fixed_parameter_pack_p_1
../../gcc/gcc/cp/pt.c:5117
0x95edc4 fixed_parameter_pack_p(tree_node*)
../../gcc/gcc/cp/pt.c:5144
0x9824ef coerce_template_parameter_pack
../../gcc/gcc/cp/pt.c:8067
0x9824ef coerce_template_parms
../../gcc/gcc/cp/pt.c:8377
0x986308 coerce_innermost_template_parms
../../gcc/gcc/cp/pt.c:8587
0x97b9b6 lookup_template_class_1
../../gcc/gcc/cp/pt.c:9032
0x97b9b6 lookup_template_class(tree_node*, tree_node*, tree_node*, tree_node*,
int, int)
../../gcc/gcc/cp/pt.c:9381
0x97d48a tsubst_aggr_type
../../gcc/gcc/cp/pt.c:12315
0x977a2e tsubst(tree_node*, tree_node*, int, tree_node*)
../../gcc/gcc/cp/pt.c:13944
0x9815ad tsubst_template_decl
../../gcc/gcc/cp/pt.c:12849
0x97daef tsubst_decl
../../gcc/gcc/cp/pt.c:12970
0x977b2f tsubst(tree_node*, tree_node*, int, tree_node*)
../../gcc/gcc/cp/pt.c:13862
0x990c3a instantiate_class_template_1
../../gcc/gcc/cp/pt.c:10851
0x990c3a instantiate_class_template(tree_node*)
../../gcc/gcc/cp/pt.c:11100
0x9d7b4d complete_type(tree_node*)
../../gcc/gcc/cp/typeck.c:136
0x9355aa cp_parser_nested_name_specifier_opt
../../gcc/gcc/cp/parser.c:6447
0x93e463 cp_parser_constructor_declarator_p
../../gcc/gcc/cp/parser.c:26539
0x93e463 cp_parser_decl_specifier_seq
../../gcc/gcc/cp/parser.c:13616
0x943c90 cp_parser_simple_declaration
../../gcc/gcc/cp/parser.c:12937
Please submit a full bug report, [etc.]=
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic