On 26/02/2025 11:44, Thomas Weißschuh wrote: > According to limits.h(2) ULONG_MAX is only guaranteed to expand to an > expression, not a symbolic constant which can be evaluated by the > preprocessor. > Specifically the definition of ULONG_MAX from nolibc can no be evaluated > by the preprocessor. To provide compatibility with nolibc, check with > __SIZEOF_LONG__ instead, with is provided directly by the preprocessor > and therefore always a symbolic constant. > > Signed-off-by: Thomas Weißschuh <thomas.weissschuh@xxxxxxxxxxxxx> Reviewed-by: Vincenzo Frascino <vincenzo.frascino@xxxxxxx> > --- > tools/testing/selftests/vDSO/parse_vdso.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/tools/testing/selftests/vDSO/parse_vdso.c b/tools/testing/selftests/vDSO/parse_vdso.c > index 200c534cc70e2c2381fce3be5c0ebe4cb5675e84..902b8f9984a1f70049d46bcd4f199df24f507dcb 100644 > --- a/tools/testing/selftests/vDSO/parse_vdso.c > +++ b/tools/testing/selftests/vDSO/parse_vdso.c > @@ -26,7 +26,7 @@ > > /* And here's the code. */ > #ifndef ELF_BITS > -# if ULONG_MAX > 0xffffffffUL > +# if __SIZEOF_LONG__ >= 8 > # define ELF_BITS 64 > # else > # define ELF_BITS 32 > -- Regards, Vincenzo