Patrick Palka
d92712cdcb
libstdc++: Restrict engaged -> disengaged std::optional fix [PR124910]
...
It turns out a union without an active member does not violate C++20 core
constant expression rules and r16-8748 was really just a workaround for a
front end bug. The actual underlying problem -- that the constexpr
evaluator treated an explicitly destroyed union member as still active --
has been fixed by r16-8767 which makes this workaround unnecessary for GCC.
Rather than remove the workaround, restrict it to Clang which seems to have
a similar bug making it still needed for e.g. the r16-8748 testcase.
PR c++/124910
libstdc++-v3/ChangeLog:
* include/std/optional (_Optional_payload_base::_M_destroy):
Restrict r16-8748 workaround to Clang, and adjust comment.
Reviewed-by: Jonathan Wakely <jwakely@redhat.com >
2026-04-21 09:33:50 -04:00
..
2024-09-16 10:10:23 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-03 16:11:58 +00:00
2026-01-07 15:20:45 +00:00
2026-01-02 09:56:11 +01:00
2026-03-06 07:12:23 -05:00
2026-01-02 09:56:11 +01:00
2026-04-17 10:36:09 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-19 12:09:11 +01:00
2026-01-02 09:56:11 +01:00
2026-04-13 12:57:58 +02:00
2026-01-02 09:56:11 +01:00
2025-08-28 17:47:00 +01:00
2026-01-19 06:36:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-03 16:13:23 +00:00
2026-02-16 12:34:18 +01:00
2026-01-10 15:08:53 +08:00
2025-12-11 19:54:44 +01:00
2026-04-16 12:05:55 +02:00
2026-01-19 06:36:11 +01:00
2026-01-02 09:56:11 +01:00
2026-04-02 13:59:55 +01:00
2026-01-02 09:56:11 +01:00
2026-03-20 09:39:30 +00:00
2026-04-02 15:50:16 +02:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-19 06:36:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-04 03:59:15 -05:00
2026-04-02 09:58:44 +02:00
2026-03-10 13:38:23 -04:00
2026-01-02 09:56:11 +01:00
2026-04-15 08:52:17 +02:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-04-21 09:33:50 -04:00
2026-04-17 13:43:49 +01:00
2026-04-17 13:43:49 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-04-10 10:14:47 -04:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-04 03:59:15 -05:00
2026-01-02 09:56:11 +01:00
2026-03-21 12:44:15 +01:00
2026-02-05 16:48:20 +00:00
2026-04-10 08:02:37 +02:00
2025-09-27 21:18:42 +01:00
2026-01-07 15:21:52 +00:00
2026-01-02 09:56:11 +01:00
2025-10-16 14:59:42 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-02 11:21:51 +01:00
2026-01-19 06:36:11 +01:00
2026-03-04 11:59:39 +00:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-14 22:56:10 +00:00
2026-01-02 09:56:11 +01:00
2026-02-13 09:06:31 +00:00
2026-04-08 08:33:11 +02:00
2026-01-02 09:56:11 +01:00
2026-03-04 03:59:15 -05:00
2026-03-04 03:59:15 -05:00
2026-04-08 08:33:11 +02:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-19 06:36:11 +01:00
2026-04-02 14:42:19 +01:00