target/armv7m: fix static analyzer warning
authorTomas Vanek <vanekt@fbl.cz>
Sun, 16 May 2021 08:05:02 +0000 (10:05 +0200)
committerTomas Vanek <vanekt@fbl.cz>
Tue, 18 May 2021 08:03:28 +0000 (09:03 +0100)
commitd7558e2ed67000afc2fa344e3acf67899fc3cebf
treef726ee579fa98852f6b2c2edd6e2964db2c806bd
parentbbbfddc3efd4a93b0c9489c2537efbaa117bcfb0
target/armv7m: fix static analyzer warning

Despite of assert(is_packed) clang static analyser complains on use
of the uninitialized offset variable.

Cross compiling with latest x86_64-w64-mingw32-gcc hits warnings
src/target/armv7m.c: In function ‘armv7m_read_core_reg’:
src/target/armv7m.c:337:54: error: ‘reg32_id’ may be used
    uninitialized in this function [-Werror=maybe-uninitialized]

It happens because mingw32 defines assert() without the attribute
"noreturn", whatever NDEBUG is defined or not.

Replace assert(is_packed) by if (is_packed) conditional and call
assert(false) in the else branch.

Change-Id: Id3c7dcccb65106e28be200b9a4d2b642f4d31019
Signed-off-by: Tomas Vanek <vanekt@fbl.cz>
Reviewed-on: http://openocd.zylin.com/6256
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Reviewed-by: Andrzej Sierżęga <asier70@gmail.com>
src/target/armv7m.c