[Bug c++/105803] [13 regression] ICE at gcc/cp/pt.cc:27737 after r13-860-gff91735a5b861d
seurer at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Jun 1 16:46:19 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105803
--- Comment #2 from seurer at gcc dot gnu.org ---
With a bit of hacking with a chainsaw I got it to this:
#include <vector>
#include <memory>
class SparsityPattern
{
public:
};
template <class SparsityPatternBase>
class BlockSparsityPatternBase// : public Subscriptor
{
};
class BlockSparsityPattern : public BlockSparsityPatternBase<SparsityPattern>
{
};
class MGTransferBlockBase
{
public:
std::vector<std::shared_ptr<BlockSparsityPattern> >
prolongation_sparsities;
template <int dim, int spacedim>
void build_matrices ();
};
template <int dim, int spacedim>
void MGTransferBlockBase::build_matrices ()
{
prolongation_sparsities.push_back (std::shared_ptr<BlockSparsityPattern> (new
BlockSparsityPattern));
}
/home/seurer/gcc/git/install/gcc-test/bin/g++ -c test.cc
test.cc: In member function 'void MGTransferBlockBase::build_matrices()':
test.cc:31:37: internal compiler error: in type_dependent_expression_p, at
cp/pt.cc:27737
31 | prolongation_sparsities.push_back
(std::shared_ptr<BlockSparsityPattern> (new BlockSparsityPattern));
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0x1063cb33 type_dependent_expression_p(tree_node*)
/home/seurer/gcc/git/gcc-test/gcc/cp/pt.cc:27737
0x1063d6f3 value_dependent_expression_p(tree_node*)
/home/seurer/gcc/git/gcc-test/gcc/cp/pt.cc:27465
0x1063df77 value_dependent_expression_p(tree_node*)
/home/seurer/gcc/git/gcc-test/gcc/cp/pt.cc:27707
0x106447cf any_value_dependent_elements_p(tree_node const*)
/home/seurer/gcc/git/gcc-test/gcc/cp/pt.cc:28184
0x103a7257 is_nondependent_constant_expression(tree_node*)
/home/seurer/gcc/git/gcc-test/gcc/cp/constexpr.cc:9673
0x103a7913 fold_non_dependent_expr_template
/home/seurer/gcc/git/gcc-test/gcc/cp/constexpr.cc:8172
0x10636ea3 build_non_dependent_expr(tree_node*)
/home/seurer/gcc/git/gcc-test/gcc/cp/pt.cc:28647
0x106379a3 make_args_non_dependent(vec<tree_node*, va_gc, vl_embed>*)
/home/seurer/gcc/git/gcc-test/gcc/cp/pt.cc:28729
0x1033ea53 build_new_method_call(tree_node*, tree_node*, vec<tree_node*, va_gc,
vl_embed>**, tree_node*, int, tree_node**, int)
/home/seurer/gcc/git/gcc-test/gcc/cp/call.cc:10939
0x105d91e7 cp_parser_postfix_expression
/home/seurer/gcc/git/gcc-test/gcc/cp/parser.cc:7856
0x105fddd3 cp_parser_unary_expression
/home/seurer/gcc/git/gcc-test/gcc/cp/parser.cc:9037
0x105b0307 cp_parser_cast_expression
/home/seurer/gcc/git/gcc-test/gcc/cp/parser.cc:9941
0x105b0e83 cp_parser_binary_expression
/home/seurer/gcc/git/gcc-test/gcc/cp/parser.cc:10043
0x105b1aff cp_parser_assignment_expression
/home/seurer/gcc/git/gcc-test/gcc/cp/parser.cc:10347
0x105b5d33 cp_parser_expression
/home/seurer/gcc/git/gcc-test/gcc/cp/parser.cc:10517
0x105ba46b cp_parser_expression_statement
/home/seurer/gcc/git/gcc-test/gcc/cp/parser.cc:12734
0x105d22ff cp_parser_statement
/home/seurer/gcc/git/gcc-test/gcc/cp/parser.cc:12526
0x105d3803 cp_parser_statement_seq_opt
/home/seurer/gcc/git/gcc-test/gcc/cp/parser.cc:12883
0x105d3957 cp_parser_compound_statement
/home/seurer/gcc/git/gcc-test/gcc/cp/parser.cc:12835
0x1060f613 cp_parser_function_body
/home/seurer/gcc/git/gcc-test/gcc/cp/parser.cc:25186
More information about the Gcc-bugs
mailing list