bug-libunistring
[Top][All Lists]
Advanced

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

Re: [bug-libunistring] undefined _UNUSED_PARAMETER_


From: Bruno Haible
Subject: Re: [bug-libunistring] undefined _UNUSED_PARAMETER_
Date: Thu, 10 Dec 2009 00:50:16 +0100
User-agent: KMail/1.9.9

Hi,

Mike Gran wrote:
> In libunistring 0.9.1.1, _UNUSED_PARAMETER_  is used as a parameter
> modifier for two functions in unistr.h, but, is not defined.
> 
> I see from the source that _UNUSED_PARAMETER is defined in 
> libunistring's config.h, but, it isn't defined any header that gets installed.
> 
> This is built on i686-pc-linux-gnu with gcc 4.3.2.

Thanks for the report. The attached fix will be contained in the next release.

In the meantime, as a workaround, you can add "-D_UNUSED_PARAMETER_=" to the
CPPFLAGS.

Bruno


2009-12-09  Bruno Haible  <address@hidden>

        Ensure _UNUSED_PARAMETER_ is defined in the public header files.
        * lib/unistring/cdefs.h: New file, based on gnulib/m4/gnulib-common.m4.
        * lib/Makefile.am (nobase_nodist_include_HEADERS): Add it.
        * gnulib-local/lib/unistr.h.diff: Include unistring/cdefs.h.
        Reported by Mike Gran <address@hidden>.

--- gnulib-local/lib/unistr.h.diff.orig 2009-12-10 00:45:32.000000000 +0100
+++ gnulib-local/lib/unistr.h.diff      2009-12-09 21:27:02.000000000 +0100
@@ -1,5 +1,5 @@
-*** unistr.h.orig      2009-04-05 12:22:17.000000000 +0200
---- unistr.h   2009-04-10 18:57:37.000000000 +0200
+*** unistr.h.orig      2009-05-03 23:06:37.000000000 +0200
+--- unistr.h   2009-12-09 21:25:58.000000000 +0100
 ***************
 *** 19,26 ****
   
@@ -10,10 +10,13 @@
   
   /* Get size_t.  */
   #include <stddef.h>
---- 19,29 ----
+--- 19,32 ----
   
   #include "unitypes.h"
   
++ /* Get common macros for C.  */
++ #include <unistring/cdefs.h>
++ 
 + /* Get inline if available.  */
 + #include <unistring/inline.h>
 + 
--- lib/Makefile.am.orig        2009-12-10 00:45:32.000000000 +0100
+++ lib/Makefile.am     2009-12-09 21:22:28.000000000 +0100
@@ -155,6 +155,9 @@
 # unistring/version.h is public.
 nobase_nodist_include_HEADERS += unistring/version.h
 
+# unistring/cdefs.h is not public, but is included by other header files.
+nobase_nodist_include_HEADERS += unistring/cdefs.h
+
 # unistring/woe32dll.h is not public, but is included by other header files.
 nobase_nodist_include_HEADERS += unistring/woe32dll.h
 
Changing permissions from . to 100644
--- lib/unistring/cdefs.h.orig  2009-04-14 12:31:40.000000000 +0200
+++ lib/unistring/cdefs.h       2009-12-09 21:19:03.000000000 +0100
@@ -0,0 +1,31 @@
+/* Common macro definitions for C include files.
+   Copyright (C) 2009 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify it
+   under the terms of the GNU Lesser 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
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public License
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
+
+#ifndef _UNISTRING_CDEFS_H
+#define _UNISTRING_CDEFS_H
+
+/* Define as a marker that can be attached to function parameter declarations
+   for parameters that are not used.  This helps to reduce warnings, such as
+   from GCC -Wunused-parameter.  */
+#ifndef _UNUSED_PARAMETER_
+# if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
+#  define _UNUSED_PARAMETER_ __attribute__ ((__unused__))
+# else
+#  define _UNUSED_PARAMETER_
+# endif
+#endif
+
+#endif /* _UNISTRING_CDEFS_H */




reply via email to

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