Line
Link Here
|
|
#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL |
|
#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL |
1 |
# define _GL_ADD_OVERFLOW(a, b, min, max) |
1 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |
2 |
__builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0) |
2 |
__builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0) |
3 |
# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) |
3 |
# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) \ |
4 |
__builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0) |
4 |
__builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0) |
5 |
# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) |
5 |
# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) \ |
6 |
__builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0) |
6 |
__builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0) |
7 |
#else |
7 |
#else |
8 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |
8 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |
9 |
-- a/oathtool/gl/intprops.h |
9 |
++ b/oathtool/gl/intprops.h |
Lines 230-240
Link Here
|
230 |
(e.g., A and B) have the same type as MIN and MAX. Instead, they assume |
230 |
(e.g., A and B) have the same type as MIN and MAX. Instead, they assume |
231 |
that the result (e.g., A + B) has that type. */ |
231 |
that the result (e.g., A + B) has that type. */ |
232 |
#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL |
232 |
#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL |
233 |
# define _GL_ADD_OVERFLOW(a, b, min, max) |
233 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |
234 |
__builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0) |
234 |
__builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0) |
235 |
# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) |
235 |
# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) \ |
236 |
__builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0) |
236 |
__builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0) |
237 |
# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) |
237 |
# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) \ |
238 |
__builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0) |
238 |
__builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0) |
239 |
#else |
239 |
#else |
240 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |
240 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |
241 |
-- a/pskctool/gl/intprops.h |
241 |
++ b/pskctool/gl/intprops.h |
Lines 230-240
Link Here
|
230 |
(e.g., A and B) have the same type as MIN and MAX. Instead, they assume |
230 |
(e.g., A and B) have the same type as MIN and MAX. Instead, they assume |
231 |
that the result (e.g., A + B) has that type. */ |
231 |
that the result (e.g., A + B) has that type. */ |
232 |
#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL |
232 |
#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL |
233 |
# define _GL_ADD_OVERFLOW(a, b, min, max) |
233 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |
234 |
__builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0) |
234 |
__builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0) |
235 |
# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) |
235 |
# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) \ |
236 |
__builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0) |
236 |
__builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0) |
237 |
# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) |
237 |
# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) \ |
238 |
__builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0) |
238 |
__builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0) |
239 |
#else |
239 |
#else |
240 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |
240 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |
241 |
-- a/liboath/gl/tests/intprops.h |
241 |
++ b/liboath/gl/tests/intprops.h |
Lines 230-240
Link Here
|
230 |
(e.g., A and B) have the same type as MIN and MAX. Instead, they assume |
230 |
(e.g., A and B) have the same type as MIN and MAX. Instead, they assume |
231 |
that the result (e.g., A + B) has that type. */ |
231 |
that the result (e.g., A + B) has that type. */ |
232 |
#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL |
232 |
#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL |
233 |
# define _GL_ADD_OVERFLOW(a, b, min, max) |
233 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |
234 |
__builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0) |
234 |
__builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0) |
235 |
# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) |
235 |
# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) \ |
236 |
__builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0) |
236 |
__builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0) |
237 |
# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) |
237 |
# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) \ |
238 |
__builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0) |
238 |
__builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0) |
239 |
#else |
239 |
#else |
240 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |
240 |
# define _GL_ADD_OVERFLOW(a, b, min, max) \ |