[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-14 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 --- Comment #12 from CVS Commits --- The master branch has been updated by Jason Merrill : https://gcc.gnu.org/g:270c5a982ccb4ef83bd9ad37d39cf47461acb55a commit r11-3893-g270c5a982ccb4ef83bd9ad37d39cf47461acb55a Author: Jason Merrill Date:

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-14 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 --- Comment #11 from Jakub Jelinek --- (In reply to Jason Merrill from comment #10) > This doesn't look valid to me. In > > [x...] { x; }... https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358#c3 is what they actually have (not sure if it

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-14 Thread jason at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 Jason Merrill changed: What|Removed |Added Assignee|unassigned at gcc dot gnu.org |jason at gcc dot gnu.org

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-14 Thread jason at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 --- Comment #10 from Jason Merrill --- This doesn't look valid to me. In [x...] { x; }... we capture the entire pack, but then try to use only a single element. This should be rejected because the use of x in the lambda body is not

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-14 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 --- Comment #9 from Jakub Jelinek --- If what clang++ does with the copy ctors is right, then what firefox does is inefficient and [aSpecialValueMappers](const SpecialConstant& aSpecialValue) { return

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-14 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 --- Comment #8 from Patrick Palka --- Also, I wonder what the final value of copy_counter should be in the below testcase (assuming it's valid): static int copy_counter; struct S { S() = default; S(const S&) { ++copy_counter; } };

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-14 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 --- Comment #7 from Patrick Palka --- (In reply to Jakub Jelinek from comment #6) > (In reply to Petr Sumbera from comment #5) > > Is there any workaround for this issue? > > I guess replacing that > [aSpecialValueMappers...](const

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-14 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 --- Comment #6 from Jakub Jelinek --- (In reply to Petr Sumbera from comment #5) > Is there any workaround for this issue? I guess replacing that [aSpecialValueMappers...](const SpecialConstant& aSpecialValue) { with [=](const SpecialConstant&

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-14 Thread sumbera at volny dot cz via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 --- Comment #5 from Petr Sumbera --- Is there any workaround for this issue?

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-14 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 Jakub Jelinek changed: What|Removed |Added CC||sumbera at volny dot cz --- Comment #4

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-12 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 --- Comment #3 from Jakub Jelinek --- The original Firefox problematic template is: template ErrorResult ExtractErrorResult(SpecialValueMappers... aSpecialValueMappers) { return mVariant.match( [](ErrorResult& aException) {

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-12 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 --- Comment #2 from Jakub Jelinek --- template void foo (T... x) { } template void bar (T... x) { foo ([x...] { static_cast (x); }...); } void test () { bar (); bar (1); bar (2.0, 3LL, 4); } ICEs too.

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-12 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 Richard Biener changed: What|Removed |Added Keywords||ice-on-valid-code

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-09 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 --- Comment #1 from Jakub Jelinek --- Slightly modified testcase where bar is surely instantiated and clang++ still accepts it. It actually ICEs in all of -std=c++{11,14,17,20}. struct A; struct B { A foo (); }; enum C { E }; struct A {

[Bug c++/97358] [8/9/10/11 Regression] ICE while building firefox since r8-2720

2020-10-09 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97358 Jakub Jelinek changed: What|Removed |Added Target Milestone|--- |8.5 Last reconfirmed|