I don't learn C, but I am writing c90 Antlr grammar which should be as compatible with GCC as possible. I see many GNU extension, one is most significant is nested functions, but all code is compilable with GCC with std=c90, not need std=gnu90, although some code is compilable only with std=gnu90