https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100595
Andrew Pinski changed:
What|Removed |Added
CC||141242068 at smail dot
nju.edu.cn
---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100595
--- Comment #4 from Andrew Pinski ---
Updated testcase:
```
typedef __UINTPTR_TYPE__ uintptr_t;
int test2() {
static uintptr_t a = (uintptr_t)(& + ((char *)& - (char *)&));
l1:
l2:
return (int)a;
}
```
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100595
--- Comment #3 from joseph at codesourcery dot com ---
My old model of constant expressions for GNU extensions says that the
difference of two label addresses is a "label difference constant
expression", which is valid as a static initializer
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100595
Richard Biener changed:
What|Removed |Added
Keywords||accepts-invalid
--- Comment #2 from
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100595
Martin Liška changed:
What|Removed |Added
Last reconfirmed||2021-05-14