https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59562

Martin Sebor <msebor at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2016-04-15
                 CC|                            |msebor at gcc dot gnu.org
     Ever confirmed|0                           |1
      Known to fail|                            |4.8.3, 4.9.3, 5.3.0, 6.0

--- Comment #1 from Martin Sebor <msebor at gcc dot gnu.org> ---
I agree that the builtin should evaluate to a constant expression when its
argument does.  The same could be said about many other builtins as well (see
for example bug 68120, and the C++ bug 70507).

Confirmed:

$ cat v.c && gcc -S -Wall -Wextra -Wpedantic -xc v.c
int i = 0;
int *p = &i;
void *q = __builtin_assume_aligned (p, 4);

v.c:3:11: error: initializer element is not constant
 void *q = __builtin_assume_aligned (p, 4);
           ^~~~~~~~~~~~~~~~~~~~~~~~

Reply via email to