mirror of
git://git.sv.gnu.org/coreutils.git
synced 2026-04-15 16:26:01 +02:00
Make __typeof__-using code depend on HAVE_TYPEOF, not __GNUC__,
since so many other C compilers also honor __typeof__.
This commit is contained in:
@@ -818,10 +818,10 @@ ptr_align (void *ptr, size_t alignment)
|
||||
#define VERIFY_EXPR(assertion) \
|
||||
(void)((struct {char a[(assertion) ? 1 : -1]; } *) 0)
|
||||
|
||||
#ifdef __GNUC__
|
||||
# define VERIFY_GCC_EXPR(assertion) VERIFY_EXPR (assertion)
|
||||
#if HAVE_TYPEOF
|
||||
# define VERIFY_W_TYPEOF(assertion) VERIFY_EXPR (assertion)
|
||||
#else
|
||||
# define VERIFY_GCC_EXPR(assertion) (void) 0
|
||||
# define VERIFY_W_TYPEOF(assertion) (void) 0
|
||||
#endif
|
||||
|
||||
/* If 10*Accum+Digit_val is larger than Type_max, then don't update Accum
|
||||
@@ -832,7 +832,7 @@ ptr_align (void *ptr, size_t alignment)
|
||||
#define DECIMAL_DIGIT_ACCUMULATE(Accum, Digit_val, Type_max) \
|
||||
( \
|
||||
/* Ensure that Type_max is the maximum value of Accum. */ \
|
||||
VERIFY_GCC_EXPR (TYPE_MAXIMUM (__typeof__ (Accum)) == (Type_max)), \
|
||||
VERIFY_W_TYPEOF (TYPE_MAXIMUM (__typeof__ (Accum)) == (Type_max)), \
|
||||
/* If the result would overflow, return 1. \
|
||||
Otherwise update Accum and return 0. */ \
|
||||
((Type_max) / 10 < Accum || Accum * 10 + (Digit_val) < Accum \
|
||||
|
||||
Reference in New Issue
Block a user