コンパイラの挙動が保守的 (たとえ言語仕様上は正しくなくても挙動を変えることは良しとしない) な傾向はあるが……。
たとえば GCC や Clang ではオプションとして -fstrict-flex-arrays が新設された上で従来通りの挙動 (いわゆる構造体ハックを許容する) をデフォルトにしてる。
https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/C-Dialect-Options.html#index-fstrict-flex-arrays
https://clang.llvm.org/docs/ClangCommandLineReference.html#cmdoption-clang-fstrict-flex-arrays

はっきりと書いてある文言を見つけられないけど将来的には 3 (最も言語仕様に厳格な解釈) をデフォルトに変更したい雰囲気もあるので猶予期間は大きめにあるものの移行を既定路線と考えてもいるって感じだと思う。