You have missed the fundamental point. The implementation of glibc uses GCC extensions. There is no reason it should not. If you want these warnings in your own code, fine. But they should not be reported for code in system headers, just like many other warnings are not.