Interesting to hear that. DOD no longer requires ADA, so many projects that did use it have converted to C++. There were even people brought in to do automated Ada-> C++ conversion a number of years ago.
MISRA C definitely makes many improvements in this area. However, writing decent Ada code is so much easier than writing C code that conforms to MISRA ( or JSF ) standards.
Yep. UB means that your program could crash, but it also means it's valid for the compiler to print out a warning and do the right thing, or error, or anything.