Some of the JPL C static analysis checks do not work properly:
Multiple statements per line: This is a C language check. It should not be applied to C++ code. It flags every one-line inline C++ function.
Long functions without assertions: This check does not understand FW_ASSERT, so it flags every function longer than 10 lines.
Variable-width integer types: The static analysis complains that type aliases like FwSizeType are not fixed-size types, even when they are aliases of fixed-size types.
Ideally these checks would be improved to work as intended; in the near term, though, they don't appear to be doing anything except generating false-positive noise, so maybe we should disable them.
I would like to define a CI-specific configuration that #defs the FW_ASSERT call to assert directly (not via the assert hooks). I think this would allow CI to recognize our FW_ASSERT as an assert.
If we cannot get CI to recognize it, it should be turned off.
Some of the JPL C static analysis checks do not work properly:
FW_ASSERT
, so it flags every function longer than 10 lines.FwSizeType
are not fixed-size types, even when they are aliases of fixed-size types.Ideally these checks would be improved to work as intended; in the near term, though, they don't appear to be doing anything except generating false-positive noise, so maybe we should disable them.