They are called "misery C" by people in the industry for a reason. They don't help with the safety all that much, but make a lot of code just fucking ugly.
Exactly. It reduced C to, almost, BASIC. Reduces available design patterns. Reduces available language features.
HOWEVER: having a MISRA-C LINT which is required to run on all code that makes it into an automobile is, ultimately, a good thing. Yes, the homogenization is ugly, but it does mean that classes of errors just can't occur.
The concept is great. There is also MISRA C++ of which I know almost nothing; is that any better?
I only wrote a little MISRA-C code, but IIRC we had a process to get waivers which was fairly reasonable I think.
BASIC, but with a human-driven process that bumps you back to C when necessary, with the understanding that multiple people look at the evil C-like code, actually seems like a fine language.
And, whichever answer you give to that, why are they bad at it?