MLBEDSW-10106: Fix bitflags casting issue.
An obscure cast issue occured during another implementation where attempting to cast the bitflags object causes it to take the implicit boolean value, rather than the explicit unsigned cast.
- This commit prevents such casts by removing the implicit boolean cast.
- Added specific flag-test operator, resulting in an actual boolean value.
- Allowed double-negation semantics (!!) to check for non-zero flags.
Signed-off-by: Philip Hall philip.hall@arm.com Change-Id: Ide581e840a0c848be68bbc3249518ab901ce480b