bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] tests: avoid compilation warnings in argmatch and exclude tests.


From: Jim Meyering
Subject: [PATCH] tests: avoid compilation warnings in argmatch and exclude tests...
Date: Fri, 11 Jun 2010 11:12:58 +0200

FYI, just pushed.

Without the following, I'd get these warnings in coreutils/gnulib-tests:

    test-argmatch.c:34:6: warning: no previous declaration for 'usage' 
[-Wmissing-declarations]
    test-exclude.c:68:6: warning: no previous declaration for 'usage' 
[-Wmissing-declarations]

    
>From d4ee8943cf24b460e938e903c0bfaaaf25706fe9 Mon Sep 17 00:00:00 2001
From: Jim Meyering <address@hidden>
Date: Fri, 11 Jun 2010 09:50:29 +0200
Subject: [PATCH] tests: avoid compilation warnings in argmatch and exclude 
tests...

in packages that define ARGMATCH_DIE_DECL, like coreutils.
* tests/test-exclude.c [ARGMATCH_DIE_DECL]: Also declare the function.
Since it always exits, declare with the "noreturn" attribute.
* tests/test-argmatch.c: Likewise.
---
 ChangeLog             |    6 ++++++
 tests/test-argmatch.c |   11 +++++++++++
 tests/test-exclude.c  |   11 +++++++++++
 3 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 5b037a4..d96f7fe 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2010-06-11  Jim Meyering  <address@hidden>

+       tests: avoid compilation warnings in argmatch and exclude tests...
+       in packages that define ARGMATCH_DIE_DECL, like coreutils.
+       * tests/test-exclude.c [ARGMATCH_DIE_DECL]: Also declare the function.
+       Since it always exits, declare with the "noreturn" attribute.
+       * tests/test-argmatch.c: Likewise.
+
        tests: avoid 'const' discard warnings in mbsstr tests
        * tests/test-mbsstr1.c (main): Add "const" to avoid trivial warning.
        * tests/test-mbsstr2.c (main): Likewise.
diff --git a/tests/test-argmatch.c b/tests/test-argmatch.c
index 807970e..bf4a22f 100644
--- a/tests/test-argmatch.c
+++ b/tests/test-argmatch.c
@@ -29,6 +29,17 @@
 /* Some packages define ARGMATCH_DIE and ARGMATCH_DIE_DECL in <config.h>, and
    thus must link with a definition of that function.  Provide it here.  */
 #ifdef ARGMATCH_DIE_DECL
+#ifndef __attribute__
+# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8)
+#  define __attribute__(x) /* empty */
+# endif
+#endif
+
+#ifndef ATTRIBUTE_NORETURN
+# define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__))
+#endif
+
+ARGMATCH_DIE_DECL ATTRIBUTE_NORETURN;
 ARGMATCH_DIE_DECL { exit (1); }
 #endif

diff --git a/tests/test-exclude.c b/tests/test-exclude.c
index bffc62d..0b8f953 100644
--- a/tests/test-exclude.c
+++ b/tests/test-exclude.c
@@ -63,6 +63,17 @@ ARGMATCH_VERIFY (exclude_keywords, exclude_flags);
 /* Some packages define ARGMATCH_DIE and ARGMATCH_DIE_DECL in <config.h>, and
    thus must link with a definition of that function.  Provide it here.  */
 #ifdef ARGMATCH_DIE_DECL
+#ifndef __attribute__
+# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8)
+#  define __attribute__(x) /* empty */
+# endif
+#endif
+
+#ifndef ATTRIBUTE_NORETURN
+# define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__))
+#endif
+
+ARGMATCH_DIE_DECL ATTRIBUTE_NORETURN;
 ARGMATCH_DIE_DECL { exit (1); }
 #endif

-- 
1.7.1.501.g23b46



reply via email to

[Prev in Thread] Current Thread [Next in Thread]