Landing: 7b60a368fb19
Project / Subsystem
gcc / c++
Date
2026-09-14
Author
Joshua Berne
Commit
7b60a368fb19b33f8676482a233d389cbc47b85e
Source
github
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- c++
- patch_id
- —
- commit_hash
- 7b60a368fb19b33f8676482a233d389cbc47b85e
- source_type
- github
- headline
- C++: Fix rollback of side effects for nested [[assume]] attributes.
- tldr
- Nested [[assume]] attributes now correctly roll back side effects during constant evaluation.
- author
- Joshua Berne
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • c++23
- • compiler
- • constant evaluation
- • optimization
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-09-14T00:00:00.000Z
A bug in the handling of nested [[assume]] attributes during constant evaluation has been fixed. Previously, when one [[assume]] was evaluated within the predicate of another, the side effects of the inner assumption were not correctly rolled back. This led to incorrect state, which is now resolved by properly restoring the previous context after the inner evaluation completes.