[Bug c++/98687] [11 Regression] ICE tree check: expected tree that contains ‘decl minimal’ structure, have ‘overload’ in diagnose_name_conflict, at cp/name-lookup.c:2729 since r11-6652-g796ead19f85372
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98687 Marek Polacek changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED --- Comment #7 from Marek Polacek --- Should be fixed.
[Bug c++/98687] [11 Regression] ICE tree check: expected tree that contains ‘decl minimal’ structure, have ‘overload’ in diagnose_name_conflict, at cp/name-lookup.c:2729 since r11-6652-g796ead19f85372
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98687 --- Comment #6 from CVS Commits --- The master branch has been updated by Marek Polacek : https://gcc.gnu.org/g:d89b00c095e99cd5cb6d3e05f30d3a61fa592000 commit r11-6802-gd89b00c095e99cd5cb6d3e05f30d3a61fa592000 Author: Marek Polacek Date: Thu Jan 14 22:14:38 2021 -0500 c++: ICE with USING_DECL redeclaration [PR98687] My recent patch that introduced push_using_decl_bindings didn't handle USING_DECL redeclaration, therefore things broke. This patch amends that by breaking out a part of finish_nonmember_using_decl out to a separate function, push_using_decl_bindings, and calling it. It needs an overload, because name_lookup is only available inside of name-lookup.c. gcc/cp/ChangeLog: PR c++/98687 * name-lookup.c (push_using_decl_bindings): New, broken out of... (finish_nonmember_using_decl): ...here. * name-lookup.h (push_using_decl_bindings): Update declaration. * pt.c (tsubst_expr): Update the call to push_using_decl_bindings. gcc/testsuite/ChangeLog: PR c++/98687 * g++.dg/lookup/using64.C: New test. * g++.dg/lookup/using65.C: New test.
[Bug c++/98687] [11 Regression] ICE tree check: expected tree that contains ‘decl minimal’ structure, have ‘overload’ in diagnose_name_conflict, at cp/name-lookup.c:2729 since r11-6652-g796ead19f85372
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98687 --- Comment #5 from Jonathan Wakely --- And the patch at https://gcc.gnu.org/pipermail/gcc-patches/2021-January/563562.html fixes the Boost build.
[Bug c++/98687] [11 Regression] ICE tree check: expected tree that contains ‘decl minimal’ structure, have ‘overload’ in diagnose_name_conflict, at cp/name-lookup.c:2729 since r11-6652-g796ead19f85372
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98687 Jonathan Wakely changed: What|Removed |Added CC||redi at gcc dot gnu.org --- Comment #4 from Jonathan Wakely --- This affects building Boost too.
[Bug c++/98687] [11 Regression] ICE tree check: expected tree that contains ‘decl minimal’ structure, have ‘overload’ in diagnose_name_conflict, at cp/name-lookup.c:2729 since r11-6652-g796ead19f85372
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98687 --- Comment #3 from David Binderman --- Another test case: void a(); namespace b { using ::a; } namespace c { template void a(); template void f(d, e) { using b::a; using c::a; } template void i(g j, h, e k) { f(j, k); } } // namespace c class l { double m() const; }; using c::i; double l::m() const { i(0, 0, int()); }
[Bug c++/98687] [11 Regression] ICE tree check: expected tree that contains ‘decl minimal’ structure, have ‘overload’ in diagnose_name_conflict, at cp/name-lookup.c:2729 since r11-6652-g796ead19f85372
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98687 --- Comment #2 from Marek Polacek --- Adjusted test: extern "C" namespace std { double log1p(double); } namespace std_fallback { template void log1p(); } template struct log1p_impl { static int run() { using std::log1p; using std_fallback::log1p; return 0; } }; void log1p() { log1p_impl::run(); }
[Bug c++/98687] [11 Regression] ICE tree check: expected tree that contains ‘decl minimal’ structure, have ‘overload’ in diagnose_name_conflict, at cp/name-lookup.c:2729 since r11-6652-g796ead19f85372
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98687 Marek Polacek changed: What|Removed |Added Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |mpolacek at gcc dot gnu.org --- Comment #1 from Marek Polacek --- Well, that was quick. Mine.
[Bug c++/98687] [11 Regression] ICE tree check: expected tree that contains ‘decl minimal’ structure, have ‘overload’ in diagnose_name_conflict, at cp/name-lookup.c:2729 since r11-6652-g796ead19f85372
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98687 Martin Liška changed: What|Removed |Added Known to work||10.2.0 Target Milestone|--- |11.0 Ever confirmed|0 |1 Known to fail||11.0 Status|UNCONFIRMED |NEW Last reconfirmed||2021-01-14 Priority|P3 |P1