gas: sframe: do not test whether offsetT exceeds INT64_MIN..INT64_MAX

A value of type offsetT, which is either a signed 32-bit or 64-bit
integer, cannot exceed the range of INT64_MIN..INT64_MAX.  This
resolves the following compile error:

../../binutils-gdb/gas/gen-sframe.c: In function ‘get_offset_size_in_bytes’:
../../binutils-gdb/gas/gen-sframe.c:213:45: error: comparison is always true due to limited range of data type [-Werror=type-limits]
  213 |   else if ((sizeof (offsetT) > 4) && (value <= INT64_MAX && value >= INT64_MIN))
      |                                             ^~
../../binutils-gdb/gas/gen-sframe.c:213:67: error: comparison is always true due to limited range of data type [-Werror=type-limits]
  213 |   else if ((sizeof (offsetT) > 4) && (value <= INT64_MAX && value >= INT64_MIN))
      |                                                                   ^~

Fixes: 58008ed4e6 ("gas: sframe: use standard min/max integer constants")
Signed-off-by: Jens Remus <jremus@linux.ibm.com>
This commit is contained in:
Jens Remus
2026-01-13 14:14:43 +01:00
parent 58008ed4e6
commit 6b8fb74a94

View File

@@ -210,7 +210,7 @@ get_offset_size_in_bytes (offsetT value)
size = 2;
else if (value <= INT32_MAX && value >= INT32_MIN)
size = 4;
else if ((sizeof (offsetT) > 4) && (value <= INT64_MAX && value >= INT64_MIN))
else if (sizeof (offsetT) > 4)
size = 8;
return size;