Sparse has a flag -m64 which allow to setup its types as-if the platform is a 64-bit one. For a long time, this allowed sparse to run correctly on 32 & 64-bit platforms. Now, with the introduction of the predefined macros like __INT32_TYPE__, sparse is more dependent on a corect matching between the native platform and the target one. As consequent, the flag -m64 can't be used anymore on some 32bit platforms. This problem has been found thanks to Uwe Kleine-König. Luc Van Oostenryck (4): testsuite: remove unneeded -m64 from command-line move predefines out of handle_arch_m64_finalize() move handle_arch_m64_finalize() to init_target() ignore -m64 on archs where int32_t is a long lib.c | 76 ++++++++---------------- target.c | 36 +++++++++++ validation/call-inlined.c | 1 + validation/call-variadic.c | 2 +- validation/cast-kinds-check.c | 1 + validation/cast-weirds.c | 1 + validation/compound-assign-type.c | 2 + validation/constant-suffix-64.c | 1 + validation/enum-bounds.c | 1 + validation/enum-sign-gcc.c | 1 + validation/expand/builtin-expect.c | 1 + validation/linear/bitfield-size.c | 1 + validation/linear/bool-cast-lp64.c | 1 + validation/linear/bool-cast.c | 1 + validation/linear/call-complex-pointer.c | 1 + validation/linear/cast-constants.c | 1 + validation/linear/degen-array.c | 1 + validation/linear/degen-function.c | 1 + validation/linear/deref-ptr-ptr.c | 1 + validation/linear/logical.c | 1 + validation/optim/cast-kinds.c | 1 + 21 files changed, 80 insertions(+), 53 deletions(-) -- 2.20.0