[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2024-02-20 Thread dangelog at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 --- Comment #9 from Giuseppe D'Angelo --- Thank you, I'll amend P3146 with this new information, and try and make sure that LEWG/LWG see the updated draft (if they discuss this before the next mailing).

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2024-02-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 --- Comment #8 from Jiang An --- (In reply to Giuseppe D'Angelo from comment #7) > Hi, > > > Note that this example adds a mediate function template > > (test_array_element_initializable) to "reduce" the non-constexpr-ness of > >

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2024-02-19 Thread dangelog at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 --- Comment #7 from Giuseppe D'Angelo --- Hi, > Note that this example adds a mediate function template > (test_array_element_initializable) to "reduce" the non-constexpr-ness of > std::declval. That's very clever, thank you! Is it

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2024-02-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 --- Comment #6 from Jiang An --- (In reply to Jiang An from comment #5) > `decltype(std::declval > decltype(_Arr<_Ti>{{std::forward<_Tp>(__t)}})>(std::declval<_Tp>()))` Typo, this should be `decltype(std::declval

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2024-02-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 --- Comment #5 from Jiang An --- Function pointers seem working (https://gcc.godbolt.org/z/Mbvfafdof). ``` template constexpr bool is_array_element_initializable_from = false; template constexpr bool is_array_element_initializable_from

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2024-02-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #4 from

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2024-02-16 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |SUSPENDED Last reconfirmed|

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2023-12-18 Thread dangelog at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 --- Comment #2 from Giuseppe D'Angelo --- (In reply to Jonathan Wakely from comment #1) > (In reply to Giuseppe D'Angelo from comment #0) > > GCC 14 implements P2280 (see #106650). > > N.B. if you say "Bug 106650" or "PR 106650" or "bug

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2023-12-18 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 --- Comment #1 from Jonathan Wakely --- (In reply to Giuseppe D'Angelo from comment #0) > GCC 14 implements P2280 (see #106650). N.B. if you say "Bug 106650" or "PR 106650" or "bug #106650" or pretty much anything except just #106650 then