[Bug middle-end/112312] New: GCC fails to optimize a C++ algorithm with a function passed in as well as with a lambda

2023-10-31 Thread ville.voutilainen at gmail dot com via Gcc-bugs
Severity: normal Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: ville.voutilainen at gmail dot com Target Milestone: --- See https://godbolt.org/z/s8dWGzb9r When passing a (pointer to) function as a predicate

[Bug c++/110851] New: [contracts] Inheriting multiple base functions with clashing contracts is not diagnosed

2023-07-30 Thread ville.voutilainen at gmail dot com via Gcc-bugs
Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ville.voutilainen at gmail dot com Target Milestone: --- See https://wandbox.org/permlink/SICxkVAe2gVql3Ae tl;dr: struct Base1 { virtual void g(int x

[Bug c++/108099] [12/13 Regression] ICE with type alias with `signed __int128_t`

2022-12-21 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108099 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug libstdc++/107525] propagate_const should not be using SFINAE on its conversion operators

2022-11-04 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107525 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug c++/85889] lambda expression can capture structured bindings

2022-11-01 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85889 --- Comment #5 from Ville Voutilainen --- And the papers that changed this are https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1091r3.html and https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1381r1.html

[Bug c++/85889] lambda expression can capture structured bindings

2022-11-01 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85889 Ville Voutilainen changed: What|Removed |Added Status|SUSPENDED |ASSIGNED --- Comment #4 from Ville

[Bug c++/107049] error: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator __sv_type() const [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; __sv_type

2022-09-27 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107049 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug c++/106567] [13 Regression] An array with a dependent type and initializer-deduced bound is treated as an array of unknown bound when captured in a lambda

2022-09-13 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106567 --- Comment #7 from Ville Voutilainen --- Since this is a 13 regression, we can close this, right? There's no backports needed.

[Bug c++/106423] -Wc++20-compat diagnostics not suppressed by #pragma GCC diagnostic ignored

2022-08-17 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106423 --- Comment #4 from Ville Voutilainen --- (In reply to Tom Honermann from comment #3) > I believe this issue can be resolved as fixed via commit > 60468d6cd46a3bd3afe8ff856f82afcd4c65a217 for the gcc 13 release. Yes, it's normal procedure that

[Bug c++/106423] -Wc++20-compat diagnostics not suppressed by #pragma GCC diagnostic ignored

2022-08-09 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106423 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug c++/106567] [13 regression] An array with a dependent type and initializer-deduced bound is treated as an array of unknown bound when captured in a lambda

2022-08-08 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106567 --- Comment #1 from Ville Voutilainen --- Repro without std::vector: template void urgh() { const V x[] = {V(0), V(1), V(2), V(0)}; [&]() { for (auto& v : x) {} }(); } void no_urgh() { using V = int; const V x[]

[Bug c++/106567] New: An array with a dependent type and initializer-deduced bound is treated as an array of unknown bound when captured in a lambda

2022-08-08 Thread ville.voutilainen at gmail dot com via Gcc-bugs
Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ville.voutilainen at gmail dot com Target Milestone: --- Test: #include template void urgh

[Bug libstdc++/105926] Using a spaceship operator on an optional of a type derived from optional causes infinite constraint recursion

2022-06-11 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105926 Ville Voutilainen changed: What|Removed |Added Assignee|unassigned at gcc dot gnu.org |ville.voutilainen at gmail

[Bug libstdc++/105926] New: Using a spaceship operator on an optional of a type derived from optional causes infinite constraint recursion

2022-06-11 Thread ville.voutilainen at gmail dot com via Gcc-bugs
: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: ville.voutilainen at gmail dot com Target Milestone: --- Testcase: #include struct oink : std::optional

[Bug c++/82470] Structured bindings don't work with std::tuple if a type has a get member function

2021-08-31 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82470 --- Comment #7 from Ville Voutilainen --- We should close this, the fixes are in 11 and the related bugs have been closed without backports. I'm happy to let JWakely do that closing, but I don't think he'll disagree on it. :P

[Bug c++/82470] Structured bindings don't work with std::tuple if a type has a get member function

2021-08-30 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82470 --- Comment #6 from Ville Voutilainen --- I think this was fixed by the fix for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71096

[Bug c++/62274] [C++11] Variadic templates expansion into non-variadic class template

2021-08-01 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62274 Ville Voutilainen changed: What|Removed |Added CC||jason at redhat dot com --- Comment

[Bug libstdc++/99277] C++2a synchronisation is inefficient in GCC 11

2021-02-26 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99277 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug c++/98646] New: A static_cast confuses -Wnonnull, causing false positives

2021-01-12 Thread ville.voutilainen at gmail dot com via Gcc-bugs
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ville.voutilainen at gmail dot com Target Milestone: --- Created attachment 49957 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49957=edit Preprocessed source Compile with /usr/lo

[Bug c++/97284] internal compiler error: 'global_options' are modified in local context

2021-01-12 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97284 --- Comment #10 from Ville Voutilainen --- Right - that's the Qt bug I'm hoping to fix, but I don't get far because of the ICE. :) The libstdc++ headers have been reorganized, so Qt's expectations that numeric_limits is available without

[Bug c++/97284] internal compiler error: 'global_options' are modified in local context

2021-01-12 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97284 --- Comment #8 from Ville Voutilainen --- Also, you can just try the actual build, if you follow https://wiki.qt.io/Building_Qt_6_from_Git

[Bug c++/97284] internal compiler error: 'global_options' are modified in local context

2021-01-12 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97284 --- Comment #7 from Ville Voutilainen --- (In reply to Martin Liška from comment #5) > Still can't reproduce it. > Please send me also output of --verbose. Yeah, I fed that output to g++, and then it compiles just fine. But when it's in the

[Bug c++/97284] internal compiler error: 'global_options' are modified in local context

2021-01-12 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97284 --- Comment #6 from Ville Voutilainen --- Created attachment 49946 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49946=edit Output of --verbose

[Bug c++/97284] internal compiler error: 'global_options' are modified in local context

2021-01-12 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97284 --- Comment #4 from Ville Voutilainen --- Created attachment 49943 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49943=edit Output of gcc -E

[Bug c++/97284] internal compiler error: 'global_options' are modified in local context

2021-01-12 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97284 --- Comment #3 from Ville Voutilainen --- ..or maybe I'm just too dumb to invoke g++ -E properly, and the rest of the options confuse the compiler.

[Bug c++/97284] internal compiler error: 'global_options' are modified in local context

2021-01-11 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97284 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug c++/98054] [11 Regression] ICE: in pp_cxx_trait_expression, at cp/cxx-pretty-print.c:2671 since r11-4386-g9e2256dcd481ffe3

2020-12-01 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98054 Ville Voutilainen changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug c++/98054] [11 Regression] ICE: in pp_cxx_trait_expression, at cp/cxx-pretty-print.c:2671 since r11-4386-g9e2256dcd481ffe3

2020-11-30 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98054 --- Comment #4 from Ville Voutilainen --- Patch at https://gcc.gnu.org/pipermail/gcc-patches/2020-November/560591.html

[Bug c++/98054] [11 Regression] ICE: in pp_cxx_trait_expression, at cp/cxx-pretty-print.c:2671 since r11-4386-g9e2256dcd481ffe3

2020-11-30 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98054 Ville Voutilainen changed: What|Removed |Added Assignee|unassigned at gcc dot gnu.org |ville.voutilainen at gmail

[Bug libstdc++/96269] optional comparison with nullopt fails

2020-11-05 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96269 --- Comment #9 from Ville Voutilainen --- Ha, well spotted. In general, in a spaceship world, you do want to provide comparisons symmetrically and const-correctly, and that also works in the pre-spaceship world, thus: #include struct X {

[Bug libstdc++/96269] optional comparison with nullopt fails

2020-11-05 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96269 --- Comment #5 from Ville Voutilainen --- Oh, and if you define a spaceship operator for your type, then things work again, with or without FLIP.

[Bug libstdc++/96269] optional comparison with nullopt fails

2020-11-05 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96269 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug c++/97663] [c++17] Function with return type 'unsigned' in nested namespace misinterpreted as deduction guide

2020-11-01 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97663 Ville Voutilainen changed: What|Removed |Added CC||jason at redhat dot com

[Bug libstdc++/97449] [11 Regression] libstdc++ cannot be compiled with clang after 3427e31331677ca826c5588c87924214f7e5c54b

2020-10-17 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97449 Ville Voutilainen changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/97449] [11 Regression] libstdc++ cannot be compiled with clang after 3427e31331677ca826c5588c87924214f7e5c54b

2020-10-16 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97449 --- Comment #2 from Ville Voutilainen --- Patch available: https://gcc.gnu.org/pipermail/gcc-patches/2020-October/556323.html

[Bug libstdc++/97449] [11 Regression] libstdc++ cannot be compiled with clang after 3427e31331677ca826c5588c87924214f7e5c54b

2020-10-15 Thread ville.voutilainen at gmail dot com via Gcc-bugs
||ville.voutilainen at gmail dot com Assignee|unassigned at gcc dot gnu.org |ville.voutilainen at gmail dot com --- Comment #1 from Ville Voutilainen --- Mine. I have a patch for it already, doing testing and submission chores...

[Bug libstdc++/95904] Improve the diagnostic for conflicting return types in std::visit

2020-10-09 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95904 Ville Voutilainen changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/94890] std::tuple({0}) fails to compile with -std=c++2a

2020-09-27 Thread ville.voutilainen at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94890 Ville Voutilainen changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/91807] [9/10/11 Regression] std::variant with multiple identical types assignment fail to compile

2020-07-02 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91807 Ville Voutilainen changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/91807] [9/10/11 Regression] std::variant with multiple identical types assignment fail to compile

2020-07-01 Thread ville.voutilainen at gmail dot com
dot com CC||ville.voutilainen at gmail dot com --- Comment #3 from Ville Voutilainen --- Mine.

[Bug libstdc++/95904] Improve the diagnostic for conflicting return types in std::visit

2020-06-29 Thread ville.voutilainen at gmail dot com
dot com Status|NEW |ASSIGNED CC||ville.voutilainen at gmail dot com

[Bug libstdc++/95915] [10/11 Regression] std::variant doesn't like types with a defaulted virtual destructor

2020-06-29 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95915 Ville Voutilainen changed: What|Removed |Added Resolution|--- |FIXED Status|ASSIGNED

[Bug libstdc++/95915] [10/11 Regression] std::variant doesn't like types with a defaulted virtual destructor

2020-06-27 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95915 --- Comment #1 from Ville Voutilainen --- Patch at https://gcc.gnu.org/pipermail/gcc-patches/2020-June/549030.html

[Bug libstdc++/95915] std::variant doesn't like types with a defaulted virtual destructor

2020-06-26 Thread ville.voutilainen at gmail dot com
||2020-06-26 Status|UNCONFIRMED |ASSIGNED Assignee|unassigned at gcc dot gnu.org |ville.voutilainen at gmail dot com

[Bug libstdc++/95915] New: std::variant doesn't like types with a defaulted virtual destructor

2020-06-26 Thread ville.voutilainen at gmail dot com
Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: ville.voutilainen at gmail dot com Target Milestone: --- >From Patrice Roy: The following code compiled in C++17 but seems broken in C++20, at least according the Clang and

[Bug c++/95111] coroutines use-after-free with lambdas

2020-05-14 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95111 --- Comment #17 from Ville Voutilainen --- (In reply to Ville Voutilainen from comment #16) > (In reply to Iain Sandoe from comment #14) > > (In reply to Ville Voutilainen from comment #12) > > The idea of bringing the lambda's captures into the

[Bug c++/95111] coroutines use-after-free with lambdas

2020-05-14 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95111 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug c++/95111] coroutines use-after-free with lambdas

2020-05-14 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95111 --- Comment #12 from Ville Voutilainen --- It sure seems to me that a coroutine lambda's captures should be copied to the coroutine state. I don't think the standard says that anywhere.

[Bug c++/94890] std::tuple({0}) fails to compile with -std=c++2a

2020-05-01 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94890 --- Comment #7 from Ville Voutilainen --- ..and as expected, std::optional is broken the same way.

[Bug c++/94890] std::tuple({0}) fails to compile with -std=c++2a

2020-05-01 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94890 --- Comment #8 from Ville Voutilainen --- (In reply to Marek Polacek from comment #6) > Thanks Ville. What I should have said... > > (In reply to Marek Polacek from comment #4) > > My current theory is that it is not a bug. > > ...in the

[Bug c++/94890] std::tuple({0}) fails to compile with -std=c++2a

2020-05-01 Thread ville.voutilainen at gmail dot com
dot com CC||ville.voutilainen at gmail dot com Last reconfirmed||2020-05-01 Ever confirmed|0 |1 Status|UNCONFIRMED |ASSIGNED --- Comment #5 from Ville Voutilainen

[Bug c++/94197] __is_constructible gives an access error

2020-03-16 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94197 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug c++/94149] __is_constructible doesn't know about C++20 parenthesized init for arrays

2020-03-11 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94149 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug c++/93629] New: A completely non-sensical requires-clause is accepted

2020-02-07 Thread ville.voutilainen at gmail dot com
Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ville.voutilainen at gmail dot com Target Milestone: --- Test: template void f() requires b &&a

[Bug c++/92947] Parenthesized aggregate initialization doesn't work with the library types it's supposed to work with

2020-02-05 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92947 --- Comment #3 from Ville Voutilainen --- Any chance of progress on this before 10 ships?

[Bug libstdc++/92570] [8/9/10 Regression] clang fails to instantiate std::optional if A is not const copy constructible

2020-01-30 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92570 Ville Voutilainen changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/92570] [8/9/10 Regression] clang fails to instantiate std::optional if A is not const copy constructible

2020-01-30 Thread ville.voutilainen at gmail dot com
||ville.voutilainen at gmail dot com Assignee|unassigned at gcc dot gnu.org |ville.voutilainen at gmail dot com

[Bug c++/92947] Parenthesized aggregate initialization doesn't work with the library types it's supposed to work with

2019-12-15 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92947 --- Comment #1 from Ville Voutilainen --- Based on some debugging work, build_functional_cast_1 looks like a plausible place where we might need to add understanding of parenthesized aggregates. The previous bug report has an incomplete (because

[Bug c++/92947] New: Parenthesized aggregate initialization doesn't work with the library types it's supposed to work with

2019-12-15 Thread ville.voutilainen at gmail dot com
: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ville.voutilainen at gmail dot com Target Milestone: --- struct aggressive_aggregate { int a; int b; }; int main() { static_assert

[Bug c++/92878] Parenthesized aggregate initialization doesn't work in a new-expression

2019-12-14 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92878 --- Comment #9 from Ville Voutilainen --- This seems to do the right thing for __is_constructible. I haven't looked at decltype or noexcept yet. diff --git a/gcc/cp/method.c b/gcc/cp/method.c index 97c27c51ea3..4b8daf8634f 100644 ---

[Bug c++/92878] Parenthesized aggregate initialization doesn't work in a new-expression

2019-12-14 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92878 --- Comment #8 from Ville Voutilainen --- One more thing besides the __is_constructible; this aggregate doesn't seem to work in an unevaluated context. Both decltype(aggressive_aggregate(1,2)) and noexcept(aggressive_aggregate(1,2)) are

[Bug c++/92878] Parenthesized aggregate initialization doesn't work in a new-expression

2019-12-14 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92878 --- Comment #7 from Ville Voutilainen --- __is_constructible is incorrectly false for such an aggregate: struct aggressive_aggregate { int a; int b; }; int main() { static_assert(__is_constructible(aggressive_aggregate, int, int));

[Bug c++/92878] Parenthesized aggregate initialization doesn't work in a new-expression

2019-12-09 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92878 --- Comment #1 from Ville Voutilainen --- Wishlist item: please add a C++2a mode libstdc++ test that verifies that make_unique and make_shared work with aggregates. Bonus points for std::allocator_traits>::construct.

[Bug c++/92878] New: Parenthesized aggregate initialization doesn't work in a new-expression

2019-12-09 Thread ville.voutilainen at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ville.voutilainen at gmail dot com Target Milestone: --- //#include struct aggressive_aggregate { int a; int b; }; int main() { auto x = aggressive_aggregate(1,2

[Bug c++/88136] -Wdeprecated-copy is draconian and shouldn't be in -Wall

2019-11-28 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88136 --- Comment #11 from Ville Voutilainen --- (In reply to Jonathan Wakely from comment #10) > I don't think it has been written yet. Right; I decided against it, since the cats are out of the bag and shipping implementations voted with their

[Bug c++/85254] boost::is_final does not work for template types

2019-05-31 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85254 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug libstdc++/88888] Cannot construct filesystem::path from variable length array

2019-04-24 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=8 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug c++/88136] -Wdeprecated-copy is draconian and shouldn't be in -Wall

2019-04-17 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88136 --- Comment #7 from Ville Voutilainen --- Innocent users are going to hit it: https://bugreports.qt.io/browse/QTBUG-75210

[Bug c++/88136] -Wdeprecated-copy is draconian and shouldn't be in -Wall

2019-04-17 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88136 --- Comment #6 from Ville Voutilainen --- Any chance of moving this warning out of -Wextra and re-considering adding it there for GCC 10?

[Bug libstdc++/89825] Jump table for variant visitation could be shortened for never empty variants

2019-03-27 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89825 Ville Voutilainen changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/89816] [9 Regression] std::variant move construction regressed since GCC 8.3

2019-03-27 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89816 Ville Voutilainen changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/89825] Jump table for variant visitation could be shortened for never empty variants

2019-03-26 Thread ville.voutilainen at gmail dot com
||ville.voutilainen at gmail dot com Assignee|unassigned at gcc dot gnu.org |ville.voutilainen at gmail dot com

[Bug libstdc++/89816] [9 Regression] std::variant move construction regressed since GCC 8.3

2019-03-25 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89816 --- Comment #10 from Ville Voutilainen --- Assignment can be made to avoid double-visitation, instead of using _M_destructive_move/copy. Other than that, getting it to generate fewer table items needs the idea from the other bug report.

[Bug libstdc++/89819] [9 Regression] std::variant operators regressed since GCC 8.3

2019-03-25 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89819 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug libstdc++/89816] [9 Regression] std::variant move construction regressed since GCC 8.3

2019-03-25 Thread ville.voutilainen at gmail dot com
||2019-03-25 Assignee|unassigned at gcc dot gnu.org |ville.voutilainen at gmail dot com Ever confirmed|0 |1

[Bug libstdc++/89816] [9 Regression] std::variant move construction regressed since GCC 8.3

2019-03-25 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89816 --- Comment #8 from Ville Voutilainen --- Patch: https://gcc.gnu.org/ml/gcc-patches/2019-03/msg01200.html

[Bug libstdc++/89816] [9 Regression] std::variant move construction regressed since GCC 8.3

2019-03-25 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89816 --- Comment #7 from Ville Voutilainen --- Looks good - I'll do a patch shortly.

[Bug libstdc++/89816] [9 Regression] std::variant move construction regressed since GCC 8.3

2019-03-25 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89816 --- Comment #5 from Ville Voutilainen --- Correct.

[Bug libstdc++/89816] [9 Regression] std::variant move construction regressed since GCC 8.3

2019-03-25 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89816 --- Comment #3 from Ville Voutilainen --- The problem here is that the older approach knows that it's always from type X1 to type X1, never from type X4 to X2. The visitation approach generates combinations that we never use.

[Bug libstdc++/89816] [9 Regression] std::variant move construction regressed since GCC 8.3

2019-03-25 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89816 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug libstdc++/52114] SFINAE out the rvalue iostream operators to give better error messages

2019-03-17 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52114 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug c++/88136] -Wdeprecated-copy is draconian and shouldn't be in -Wall

2018-11-21 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88136 --- Comment #2 from Ville Voutilainen --- This is not just a Qt problem. I will write a proposal to undeprecate this deprecation for C++20 before the next committee meeting.

[Bug c++/88136] New: -Wdeprecated-copy is draconian and shouldn't be in -Wall

2018-11-21 Thread ville.voutilainen at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ville.voutilainen at gmail dot com Target Milestone: --- Consider code like this: struct X { protected: ~X() {} }; struct Y : X { Y() = default; Y(const Y& other) : X(o

[Bug libstdc++/87855] std::optional only copy-constructible if T is trivially copy-constructible

2018-11-19 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87855 --- Comment #16 from Ville Voutilainen --- (In reply to Florian Weimer from comment #15) > (In reply to Ville Voutilainen from comment #13) > > Well, Jonathan found this http://lists.isocpp.org/core/2018/06/4643.php > > Would you please

[Bug libstdc++/87855] std::optional only copy-constructible if T is trivially copy-constructible

2018-11-19 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87855 --- Comment #14 from Ville Voutilainen --- (In reply to fiesh from comment #12) > X(double) : X(X(42)) {} // clang doesn't like this > > is also enough to show the difference, no need for an operator. Yeah. The list-archive link that you

[Bug libstdc++/87855] std::optional only copy-constructible if T is trivially copy-constructible

2018-11-19 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87855 --- Comment #13 from Ville Voutilainen --- Well, Jonathan found this http://lists.isocpp.org/core/2018/06/4643.php

[Bug libstdc++/87855] std::optional only copy-constructible if T is trivially copy-constructible

2018-11-19 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87855 Ville Voutilainen changed: What|Removed |Added CC||jason at redhat dot com --- Comment

[Bug libstdc++/87855] std::optional only copy-constructible if T is trivially copy-constructible

2018-11-19 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87855 --- Comment #10 from Ville Voutilainen --- Here's another one where gcc and clang disagree: https://wandbox.org/permlink/UsViiOoDRgdismAy The disagreement is over X(bool b) : X((b, X(42))) {} where b is unused, gcc elides the temporary and

[Bug libstdc++/87855] std::optional only copy-constructible if T is trivially copy-constructible

2018-11-19 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87855 --- Comment #9 from Ville Voutilainen --- See https://wandbox.org/permlink/snAuT59ocie38DU5 Here's a tl;dr: struct NonTrivial {NonTrivial(const NonTrivial&) {}}; struct X { X() : x(42) {} X(bool b) : X(b ? X(42): X(666)) {} // clang

[Bug libstdc++/87855] std::optional only copy-constructible if T is trivially copy-constructible

2018-11-19 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87855 --- Comment #8 from Ville Voutilainen --- (In reply to Jonathan Wakely from comment #7) > (In reply to fiesh from comment #0) > > (If this is true, is it > > a separate gcc bug that it does not delete the union's constructor?) > > Yes, I think

[Bug libstdc++/87855] std::optional only copy-constructible if T is trivially copy-constructible

2018-11-15 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87855 --- Comment #5 from Ville Voutilainen --- New patch is at https://gcc.gnu.org/ml/gcc-patches/2018-11/msg01368.html

[Bug c++/55004] [meta-bug] constexpr issues

2018-11-14 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55004 Bug 55004 depends on bug 67026, which changed state. Bug 67026 Summary: GCC incorrectly rejects well-formed constexpr function definition https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67026 What|Removed |Added

[Bug c++/67026] GCC incorrectly rejects well-formed constexpr function definition

2018-11-14 Thread ville.voutilainen at gmail dot com
||ville.voutilainen at gmail dot com Resolution|--- |DUPLICATE --- Comment #6 from Ville Voutilainen --- This seems to have been fixed by the fix to 86678. *** This bug has been marked as a duplicate of bug 86678 ***

[Bug c++/86678] constexpr evaluation incorrectly diagnoses unevaluated call to non-constexpr function

2018-11-14 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86678 Ville Voutilainen changed: What|Removed |Added CC||anders.granlund.0 at gmail dot com

[Bug libstdc++/87855] std::optional only copy-constructible if T is trivially copy-constructible

2018-11-02 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87855 --- Comment #3 from Ville Voutilainen --- The fix is not quite right. I'll do a more intrusive one. Stay tuned.

[Bug libstdc++/87855] std::optional only copy-constructible if T is trivially copy-constructible

2018-11-01 Thread ville.voutilainen at gmail dot com
||2018-11-01 CC||ville.voutilainen at gmail dot com Assignee|unassigned at gcc dot gnu.org |ville.voutilainen at gmail dot com Ever confirmed|0 |1 --- Comment #1 from Ville Voutilainen

[Bug c++/87726] New: -fdebug-prefix-map doesn't work with lto

2018-10-24 Thread ville.voutilainen at gmail dot com
++ Assignee: unassigned at gcc dot gnu.org Reporter: ville.voutilainen at gmail dot com Target Milestone: --- Created attachment 44887 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44887=edit Test application With the attached source, uncommenting the lto flags at the

[Bug c++/87665] [8/9 Regression] gcc HEAD (svn: 265340) breaks elements on resize

2018-10-23 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87665 Ville Voutilainen changed: What|Removed |Added CC||ville.voutilainen at gmail dot com

[Bug libstdc++/87619] sizeof(std::variant) can be reduced if its variant_size is UCHAR_MAX

2018-10-17 Thread ville.voutilainen at gmail dot com
||ville.voutilainen at gmail dot com Resolution|--- |FIXED --- Comment #2 from Ville Voutilainen --- Fixed.

[Bug c++/87051] is_trivially_move_constructible wrongly gives `false` for class with user-provided non-const copy constructor

2018-09-13 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87051 --- Comment #2 from Ville Voutilainen --- Patch available: https://gcc.gnu.org/ml/gcc-patches/2018-09/msg00670.html

  1   2   3   4   5   6   >