On Sat, Feb 02, 2019 at 04:50:06PM +0100, Uwe Kleine-König wrote: > Hello Luc, > > On Fri, Feb 01, 2019 at 10:00:37PM +0100, Luc Van Oostenryck wrote: > > 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. > > Thanks for your support here. I tested this series on mips and now I > get: > > OK: out of 566 tests, 510 passed, 56 failed > 56 of them are known to fail > 61 tests were disabled > > If you want interpret that as > > Tested-by: Uwe Kleine-König <uwe@xxxxxxxxxxxxxxxxx> Great!. Thank you for the testing. > for your patches. > > Later in the build process the following is run: > > env CHECK=./sparse ./cgcc -no-compile memops.c > > which results in: > > /usr/include/mips-linux-gnu/bits/types.h:138:3: error: > /usr/include/mips-linux-gnu/bits/types.h:143:12: error: Expected ; at end of declaration ... > > hmm, strange. This doesn't break the build because the exit code is 0, I > wonder if that is intended? Yes it is intended (in short, because sparse is just a checker). You can make it fail if you use the option -Wsparse-error (but it also turns all warnings into errors ... I'll add a new flag to just have a non-zero exit code in case of error, like GCC). > I don't know how I should tackle that, if you need some data from such a > machine, just tell me. Thank you but I think I've found the cause: MIPS needs _MIPS_SZPTR to be defined by the compiler/sparse. A patch is coming. Best regards, -- Luc