bug-gnu-utils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

broken strtoimax.c tar 1.13.22


From: Per Ekman
Subject: broken strtoimax.c tar 1.13.22
Date: 07 Sep 2001 18:19:43 +0200
User-agent: Gnus/5.0802 (Gnus v5.8.2) Emacs/20.5

Hello,

The following code fails to compile with the AIX xlc compiler

(from tar-1.13.22/lib/strtoimax.c)

INT
strtoimax (char const *ptr, char **endptr, int base)
{
#if HAVE_UNSIGNED_LONG_LONG
  verify (size_is_that_of_long_or_long_long,
          (sizeof (INT) == sizeof strtol (ptr, endptr, base)
           || sizeof (INT) == sizeof strtoll (ptr, endptr, base)));

  if (sizeof (INT) != sizeof strtol (ptr, endptr, base)) 
    return strtoll (ptr, endptr, base);
#else
  verify (size_is_that_of_long,
          sizeof (INT) == sizeof strtol (ptr, endptr, base));
#endif

  return strtol (ptr, endptr, base);
}

this because the sizeof operator can't be applied to an expression
of function type in ANSI C.

I don't have any good suggestions what to do about it unfortunately.

Sincerely
Per Ekman




reply via email to

[Prev in Thread] Current Thread [Next in Thread]