https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116418
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Blocks| |55004
Summary|[12/13/14/15 Regression] |[12/13/14/15 Regression]
|Nested statement |statement expressions as
|expressions with decltype |initializer for decltype
|auto in template break |auto breaks in templates
| |with optimization turned on
Status|WAITING |NEW
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Confirmed.
Reduced testcase:
```
template <typename>
void fn() {
decltype(auto) v = ({3;}); // breaks
}
```
Fails at -O1+. Most likely a check for optimization in the front-end trying to
optimize the initializer and using the const expression path for that.
Referenced Bugs:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55004
[Bug 55004] [meta-bug] constexpr issues