bug-gnulib
[Top][All Lists]
Advanced

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

Re: bitset: Fix conflict with 'free-posix' module


From: Bruno Haible
Subject: Re: bitset: Fix conflict with 'free-posix' module
Date: Wed, 30 Dec 2020 02:17:11 +0100
User-agent: KMail/5.1.3 (Linux/4.4.0-197-generic; KDE/5.18.0; x86_64; ; )

> The continuous integration uncovered this problem: A testdir with modules
> 'bitset' and 'free-posix' fails to build.

Similarly, I get a conflict on Ubuntu 18.04:

gcc  -g -O2   -o test-linkedhash_set test-linkedhash_set.o libtests.a 
../gllib/libgnu.a libtests.a ../gllib/libgnu.a libtests.a   -lm -lm -lm -lm -lm 
-lm -lm -lm -lm -lm -lm
depbase=`echo test-list-c++.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -DEXEEXT=\"\" -I. -I..  -DGNULIB_STRICT_CHECKING=1 
-DIN_GNULIB_TESTS=1 -I. -I. -I.. -I./.. -I../gllib -I./../gllib -Wall  -g -O2 
-MT test-list-c++.o -MD -MP -MF $depbase.Tpo -c -o test-list-c++.o 
test-list-c++.cc &&\
mv -f $depbase.Tpo $depbase.Po
In file included from macros.h:22:0,
                 from test-list-c++.cc:25:
test-list-c++.cc: In function 'int main(int, char**)':
test-list-c++.cc:75:9: error: 'class gl_List<const char*>' has no member named 
'rpl_free'; did you mean 'free'?
   list2.free ();
         ^
test-list-c++.cc:76:9: error: 'class gl_List<const char*>' has no member named 
'rpl_free'; did you mean 'free'?
   list1.free ();
         ^
Makefile:21748: recipe for target 'test-list-c++.o' failed


This patch fixes it.


2020-12-29  Bruno Haible  <bruno@clisp.org>

        list-c++, [o]map-c++, [o]set-c++: Fix conflict with 'free-posix' module.
        * lib/gl_list.hh: Include <stdlib.h>.
        * lib/gl_map.hh: Likewise.
        * lib/gl_omap.hh: Likewise.
        * lib/gl_set.hh: Likewise.
        * lib/gl_oset.hh: Likewise.

diff --git a/lib/gl_list.hh b/lib/gl_list.hh
index 8b0ccad..85e06b9 100644
--- a/lib/gl_list.hh
+++ b/lib/gl_list.hh
@@ -23,6 +23,8 @@
 #include "gl_sublist.h"
 #include "gl_xsublist.h"
 
+#include <stdlib.h>     /* because Gnulib's <stdlib.h> may '#define free ...' 
*/
+
 /* gl_List is a C++ wrapper around the gl_list data type.
    Its element type is 'ELTYPE *'.
 
diff --git a/lib/gl_map.hh b/lib/gl_map.hh
index 082694f..8e946d6 100644
--- a/lib/gl_map.hh
+++ b/lib/gl_map.hh
@@ -21,6 +21,8 @@
 #include "gl_map.h"
 #include "gl_xmap.h"
 
+#include <stdlib.h>     /* because Gnulib's <stdlib.h> may '#define free ...' 
*/
+
 /* gl_Map is a C++ wrapper around the gl_map data type.
    Its key type is 'KEYTYPE *'.  Its value type is 'VALUETYPE *'.
 
diff --git a/lib/gl_omap.hh b/lib/gl_omap.hh
index 903befb..953c9c0 100644
--- a/lib/gl_omap.hh
+++ b/lib/gl_omap.hh
@@ -21,6 +21,8 @@
 #include "gl_omap.h"
 #include "gl_xomap.h"
 
+#include <stdlib.h>     /* because Gnulib's <stdlib.h> may '#define free ...' 
*/
+
 /* gl_OMap is a C++ wrapper around the gl_omap data type.
    Its key type is 'KEYTYPE *'.  Its value type is 'VALUETYPE *'.
 
diff --git a/lib/gl_oset.hh b/lib/gl_oset.hh
index 8a7edc9..5150e79 100644
--- a/lib/gl_oset.hh
+++ b/lib/gl_oset.hh
@@ -21,6 +21,8 @@
 #include "gl_oset.h"
 #include "gl_xoset.h"
 
+#include <stdlib.h>     /* because Gnulib's <stdlib.h> may '#define free ...' 
*/
+
 /* gl_OSet is a C++ wrapper around the gl_oset data type.
    Its element type is 'ELTYPE *'.
 
diff --git a/lib/gl_set.hh b/lib/gl_set.hh
index 3b64bc5..67b4a23 100644
--- a/lib/gl_set.hh
+++ b/lib/gl_set.hh
@@ -21,6 +21,8 @@
 #include "gl_set.h"
 #include "gl_xset.h"
 
+#include <stdlib.h>     /* because Gnulib's <stdlib.h> may '#define free ...' 
*/
+
 /* gl_Set is a C++ wrapper around the gl_set data type.
    Its element type is 'ELTYPE *'.
 




reply via email to

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