-/* Call __argmatch_internal, but handle the error so that it never
- returns. Errors are reported to the users with a list of valid
- values.
-
- KIND is a description of the type of entity that was being matched.
- ARG, ARGLIST, and SENSITIVE are the same as in __argmatch_internal
- VALIST, and VALSIZE are the same as in valid_args */
-int
-__xargmatch_internal (const char *kind, const char *arg,
- const char *const *arglist,
- const char *vallist, size_t valsize,
- int case_sensitive)
-{
- int i;
-
- i = __argmatch_internal (arg, arglist, vallist, valsize, case_sensitive);
- if (i >= 0)
- {
- /* Success */
- return i;
- }
- else
- {
- /* Failure */
- argmatch_invalid (kind, arg, i);
- argmatch_valid (arglist, vallist, valsize);
- exit (EXIT_BADARG);
- }
- return -1; /* To please some compilers */
-}
-