Hash :
04c1ac69
Author :
Date :
2012-01-05T23:44:15
Use ', not `, for quoting output. * build-aux/announce-gen (usage, sizes, print_news_deltas) (print_changelog_deltas, get_tool_versions, main program): * build-aux/git-version-gen: * build-aux/gitlog-to-changelog (usage, parse_amend_file): * build-aux/move-if-change (help): * build-aux/useless-if-before-free (usage, main program): * check-module (parse_module_file, usage) (find_included_lib_files, check_module): * lib/argmatch.c (main) [TEST]: * lib/argp-help.c (_help): * lib/getopt1.c (main) [TEST]: * lib/git-merge-changelog.c (usage): * lib/xstrtol-error.c (xstrtol_error): * m4/alloca.m4 (_AC_LIBOBJ_ALLOCA): * m4/argz.m4 (gl_FUNC_ARGZ): * m4/bison.m4 (gl_BISON): * m4/calloc.m4 (gl_FUNC_CALLOC_GNU): * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER): * m4/fpending.m4 (gl_PREREQ_FPENDING): * m4/gc-random.m4 (gl_GC_RANDOM): * m4/intl.m4 (gt_CHECK_DECL): * m4/link-follow.m4 (gl_FUNC_LINK_FOLLOWS_SYMLINK): * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT) (AC_TYPE_UNSIGNED_LONG_LONG_INT): * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): * m4/lstat.m4 (gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): * m4/onceonly.m4 (AC_CHECK_FUNCS_ONCE): * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): * tests/test-dirname.c (main): * tests/test-getpass.c (main): * tests/test-iconvme.c (main): * tests/test-parse-datetime.c (LOG): * tests/test-xstrtoimax.sh: * tests/test-xstrtol.sh: * tests/test-xstrtoll.sh: * tests/test-xstrtoumax.sh: * tests/unigbrk/test-uc-is-grapheme-break.c (main): * top/GNUmakefile (abort-due-to-no-makefile): Quote 'like this', not `like this', as per the recent change to the GNU coding standards.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
/* A more useful interface to strtol.
Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2012 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
#include "xstrtol.h"
#include <stdlib.h>
#include "error.h"
#include "exitfail.h"
#include "gettext.h"
#define N_(msgid) msgid
/* Report an error for an invalid integer in an option argument.
ERR is the error code returned by one of the xstrto* functions.
Use OPT_IDX to decide whether to print the short option string "C"
or "-C" or a long option string derived from LONG_OPTION. OPT_IDX
is -2 if the short option "C" was used, without any leading "-"; it
is -1 if the short option "-C" was used; otherwise it is an index
into LONG_OPTIONS, which should have a name preceded by two '-'
characters.
ARG is the option-argument containing the integer.
After reporting an error, exit with status EXIT_STATUS if it is
nonzero. */
static void
xstrtol_error (enum strtol_error err,
int opt_idx, char c, struct option const *long_options,
char const *arg,
int exit_status)
{
char const *hyphens = "--";
char const *msgid;
char const *option;
char option_buffer[2];
switch (err)
{
default:
abort ();
case LONGINT_INVALID:
msgid = N_("invalid %s%s argument '%s'");
break;
case LONGINT_INVALID_SUFFIX_CHAR:
case LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW:
msgid = N_("invalid suffix in %s%s argument '%s'");
break;
case LONGINT_OVERFLOW:
msgid = N_("%s%s argument '%s' too large");
break;
}
if (opt_idx < 0)
{
hyphens -= opt_idx;
option_buffer[0] = c;
option_buffer[1] = '\0';
option = option_buffer;
}
else
option = long_options[opt_idx].name;
error (exit_status, 0, gettext (msgid), hyphens, option, arg);
}
/* Like xstrtol_error, except exit with a failure status. */
void
xstrtol_fatal (enum strtol_error err,
int opt_idx, char c, struct option const *long_options,
char const *arg)
{
xstrtol_error (err, opt_idx, c, long_options, arg, exit_failure);
abort ();
}