

Ada is a language that leaves a lot of things “implementation dependent” as it’s not supposed to grant easy access to underlying data types like those you’ll find in C, or literally on the silicon. You’re supposed to be able to declare your own integer type of any size and the compiler is supposed to figure it out. If it chooses to use a native data type, then so be it.
This doesn’t guarantee the correctness of the compiler nor the programmer who absolutely has to work with native types because it’s an embedded system though.
This has ended in disaster at least once: https://itsfoss.com/a-floating-point-error-that-caused-a-damage-worth-half-a-billion/
Technically, if you ignore the inherent contradiction in the name, some languages treat
NaN
as a falsy number and the IEEE standards admit trillions of possibleNaN
s.