https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88699
Bug ID: 88699
Summary: tree check fail: expected function_decl, have
using_decl in add_method, at cp/class.c:1137
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: dcb314 at hotmail dot com
Target Milestone: ---
Created attachment 45347
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45347&action=edit
gzipped C++ source code
For the attached C++ code, with recent gcc trunk, I get this:
$ ~/gcc/results/bin/gcc -c -w bug492.cc
bug492.cc:145738:16: internal compiler error: tree check: expected
function_decl, have using_decl in add_method, at cp/class.c:1137
145738 | class Mat<eT>::fixed : public Mat<eT>
| ^~~~~
0x7bbfe5 tree_check_failed(tree_node const*, char const*, int, char const*,
...)
../../trunk/gcc/tree.c:9811
0x5e5f3d tree_check(tree_node*, char const*, int, char const*, tree_code)
../../trunk/gcc/tree.h:3176
0x5e5f3d add_method(tree_node*, tree_node*, bool)
../../trunk/gcc/cp/class.c:1137
0x8a4ac1 finish_struct(tree_node*, tree_node*)
../../trunk/gcc/cp/class.c:7149
I'll have my usual go at reducing the code and providing a range
of revisions where I think gcc trunk has gone wrong.