Tool/software: TI C/C++ Compiler
How does the TI compiler handle _Bool variables that happen to be neither 0 nor 1?
(Take your pick for how this happened: they weren't initialized, type punning or other side-effects, cosmic radiation, what-have-you.)
I'm generally interested in the answer for any of TI's compiler targets, but I'm most specifically interested in TI's ARM compiler.
The ARM Optimizing C/C++ Compiler v18.1.0.LTS User's Guide (spnu151r.pdf) doesn't have much to say about _Bool, It shows up in exactly 3 places, one of which is an entry in Table 5-1 which gives it a "Maximum Range" of 255. I suspect that this is a bit misleading.
The only reference to "trap representations" in the user's guide is a statement in entry J.3.5 inside section 5.1.1 that states "Integer types are represented as two's complements, and there are no trap representations." I assume this is only meant to be referring to _signed_ integer types, correct?
Does the TI compiler consider reads of _Bool variables that are neither 0 nor 1 to be undefined behavior?
--thx