The order of qualifiers and specifiers does not matter. Per C 2011 [N1570] 6.7.3 10:
… the order of type qualifiers within a list of specifiers or qualifiers does not affect the specified type.
and 6.7.2 2:
… the type specifiers may occur in any order, possibly intermixed with the other declaration specifiers.
However, the standard describes using storage-class specifiers after other specifiers or qualifiers as obsolescent, in 6.11.5:
The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration is an obsolescent feature.
“Obsolescent” means the feature may be considered for withdrawal in future revisions of the standard (per Introduction paragraph 2). Thus, compilers that issue a warning for using const static
are suggesting a change that helps prepare the source code for a future version of C.