This source file includes following definitions.
- Strtoimax
 
   1 
   2 
   3 
   4 
   5 
   6 
   7 
   8 
   9 
  10 
  11 
  12 
  13 
  14 
  15 
  16 
  17 
  18 
  19 
  20 
  21 #include <config.h>
  22 
  23 
  24 #include <inttypes.h>
  25 
  26 #include <stdlib.h>
  27 
  28 #include "verify.h"
  29 
  30 #ifdef UNSIGNED
  31 # ifndef HAVE_DECL_STRTOULL
  32 "this configure-time declaration test was not run"
  33 # endif
  34 # if !HAVE_DECL_STRTOULL
  35 unsigned long long int strtoull (char const *, char **, int);
  36 # endif
  37 
  38 #else
  39 
  40 # ifndef HAVE_DECL_STRTOLL
  41 "this configure-time declaration test was not run"
  42 # endif
  43 # if !HAVE_DECL_STRTOLL
  44 long long int strtoll (char const *, char **, int);
  45 # endif
  46 #endif
  47 
  48 #ifdef UNSIGNED
  49 # define Int uintmax_t
  50 # define Strtoimax strtoumax
  51 # define Strtol strtoul
  52 # define Strtoll strtoull
  53 # define Unsigned unsigned
  54 #else
  55 # define Int intmax_t
  56 # define Strtoimax strtoimax
  57 # define Strtol strtol
  58 # define Strtoll strtoll
  59 # define Unsigned
  60 #endif
  61 
  62 Int
  63 Strtoimax (char const *ptr, char **endptr, int base)
     
  64 {
  65   verify (sizeof (Int) == sizeof (Unsigned long int)
  66           || sizeof (Int) == sizeof (Unsigned long long int));
  67 
  68   if (sizeof (Int) != sizeof (Unsigned long int))
  69     return Strtoll (ptr, endptr, base);
  70 
  71   return Strtol (ptr, endptr, base);
  72 }