Created attachment 181784 [details] the test program Compile the attached test program with: clang -std=c11 -pedantic test.c -o test This is expected to compile without warnings. However, it produces an "imaginary constants is a GNU extension" warning on FreeBSD. This is because _Complex_I is defined as ((float _Complex)1.0i) in /usr/include/complex.h. The easiest workaround would be to use __extension__ to suppress the warning, i.e. redefine _Complex_I as (__extension__ (float _Complex)1.0i). This is what glibc does as well. It's a minor issue, but it prevents a project I'm working on from building with -Wall on FreeBSD.