-strtol_error
- __xstrtol __P ((const char *s, char **ptr, int base,
- __unsigned long int *val, const char *valid_suffixes));
-
-#define _STRTOL_ERROR(exit_code, str, argument_type_string, err) \
- do \
- { \
- switch ((err)) \
- { \
- case LONGINT_OK: \
- abort (); \
- \
- case LONGINT_INVALID: \
- error ((exit_code), 0, "invalid %s `%s'", \
- (argument_type_string), (str)); \
- break; \
- \
- case LONGINT_INVALID_SUFFIX_CHAR: \
- error ((exit_code), 0, "invalid character following %s `%s'", \
- (argument_type_string), (str)); \
- break; \
- \
- case LONGINT_OVERFLOW: \
- error ((exit_code), 0, "%s `%s' larger than maximum long int",\
- (argument_type_string), (str)); \
- break; \
- } \
- } \
- while (0)
-
-#define STRTOL_FATAL_ERROR(str, argument_type_string, err) \
- _STRTOL_ERROR (2, str, argument_type_string, err)
-
-#define STRTOL_FAIL_WARN(str, argument_type_string, err) \
- _STRTOL_ERROR (0, str, argument_type_string, err)
-
-#endif /* _xstrtol_h_ */