I think it's time you stop living in 1989 and accept that you can no longer have a language like C with just hosted and standalone conforming environments to distinguish its features. It may have made sense then, but 22 years later the hardware diversified itself too much. C99 had its share of mistakes that C11 tried to correct. Why would you, for instance, force a compiler to support VLAs if the compiler is meant for an embed system with bounded stack growth? Or why would you force a compiler to support VLAs in an embedded system with very limited resources, when VLAs don't let you recover from OOM errors?
You can argue in that case we should remove VLAs. But I ask you, what for?
Will you just start refusing additions unless all compilers can implement them? Languages like C++ and others don't suffer from these technicalities because they tend to aim at a smaller subset of the hardware ecosystem. But C is more expansive in WHERE it can be used. If there is anyone you should be arguing with, is the implementation developers; if they can support an optional feature and choose not to, then it's them that are at fault and they cannot shield themselves on the fact the feature carries an "optional" tag. It would reveal a gross misunderstanding of its purpose.
6 years later and we still don't have a C11 rationale document to stand by. But from all I see (and I am still learning the language, so I haven't seen enough), most implementations developers aren't so confused as you and they have supported VLAs where it makes sense to support them.