From: Bruno Haible Date: Fri, 10 Nov 2006 14:49:09 +0000 (+0000) Subject: Avoid unused variable warnings with gcc. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1606cfe35b07beb2ef1f5c36606515c0f81d4acf;p=pspp Avoid unused variable warnings with gcc. --- diff --git a/ChangeLog b/ChangeLog index 74371ff135..3c21fc75d1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2006-11-09 Paul Eggert + + * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]: + (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]: + (bind_textdomain_codeset) [! ENABLE_NLS]: + Evaluate all the arguments. That way, callers get compatible behavior + if the arguments have side effects. Also, it avoids some GCC + diagnostics in some cases; Joel E. Denny reported problems when Bison + was configured with --enable-gcc-warnigs. + 2006-11-10 Jim Meyering * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that diff --git a/lib/gettext.h b/lib/gettext.h index f15eb6a25c..18c62a4067 100644 --- a/lib/gettext.h +++ b/lib/gettext.h @@ -64,17 +64,22 @@ On pre-ANSI systems without 'const', the config.h file is supposed to contain "#define const". */ # define gettext(Msgid) ((const char *) (Msgid)) -# define dgettext(Domainname, Msgid) ((const char *) (Msgid)) -# define dcgettext(Domainname, Msgid, Category) ((const char *) (Msgid)) +# define dgettext(Domainname, Msgid) ((void) (Domainname), gettext (Msgid)) +# define dcgettext(Domainname, Msgid, Category) \ + ((void) (Category), dgettext (Domainname, Msgid)) # define ngettext(Msgid1, Msgid2, N) \ - ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) + ((N) == 1 \ + ? ((void) (Msgid2), (const char *) (Msgid1)) \ + : ((void) (Msgid1), (const char *) (Msgid2))) # define dngettext(Domainname, Msgid1, Msgid2, N) \ - ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) + ((void) (Domainname), ngettext (Msgid1, Msgid2, N)) # define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \ - ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) + ((void) (Category), dngettext(Domainname, Msgid1, Msgid2, N)) # define textdomain(Domainname) ((const char *) (Domainname)) -# define bindtextdomain(Domainname, Dirname) ((const char *) (Dirname)) -# define bind_textdomain_codeset(Domainname, Codeset) ((const char *) (Codeset)) +# define bindtextdomain(Domainname, Dirname) \ + ((void) (Domainname), (const char *) (Dirname)) +# define bind_textdomain_codeset(Domainname, Codeset) \ + ((void) (Domainname), (const char *) (Codeset)) #endif