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

--- Comment #2 from Vincent Lefèvre <vincent-gcc at vinc17 dot net> ---
(In reply to Vincent Lefèvre from comment #1)
> The cause seems to be that the functions are builtins:
> 
> $ gcc-snapshot -std=c99 -c tst-cst.c
[...]

Oops, incomplete copy-paste. It should have been:

$ gcc-snapshot -std=c99 -c tst-cst.c -fno-builtin
tst-cst.c: In function 'f':
tst-cst.c:7:21: error: initializer element is not constant
   static double x = fabs (3.0);
                     ^~~~
tst-cst.c:8:21: error: initializer element is not constant
   static double y = fma (2.0, 3.0, 4.0);
                     ^~~
tst-cst.c:9:21: error: initializer element is not constant
   static double z = foo (2.0, 3.0, 4.0);
                     ^~~

Without the -fno-builtin, the diagnostic for fabs() and fma() are missing.

Reply via email to