Re: [PPL-devel] Problems with ppl-0.10.2 and g++ 4.4.0 on Open Solaris (x86_64)

(sorry for the broken thread, I haven't subscribed to the list)
apparently, some of the header files in your system are broken. For example, here is line 69 in src/Pointset_Powerset.defs.hh:
typedef Powerset<CS> Base;
I bet that you have an header file containing something like
#define CS 15
Can you please check that?
He does, in sys/regset.h. And so does linux (actually glibc) on x86(_64) in sys/reg.h (but CS is either 13 or 17 there). The only difference is that the libstdc++ headers end up accidentally including it on solaris and not on linux.
It sucks, but I guess it would be nice to occasionally build PPL and run the testsuite on linux on a PC with CPPFLAGS='-include sys/reg.h'.

Marc Glisse wrote:
(sorry for the broken thread, I haven't subscribed to the list)
apparently, some of the header files in your system are broken. For example, here is line 69 in src/Pointset_Powerset.defs.hh:
typedef Powerset<CS> Base;
I bet that you have an header file containing something like
#define CS 15
Can you please check that?
He does, in sys/regset.h. And so does linux (actually glibc) on x86(_64) in sys/reg.h (but CS is either 13 or 17 there). The only difference is that the libstdc++ headers end up accidentally including it on solaris and not on linux.
It sucks, but I guess it would be nice to occasionally build PPL and run the testsuite on linux on a PC with CPPFLAGS='-include sys/reg.h'.
Hi Marc,
we will certainly follow your suggestion. Unfortunately, this seems very "ad hoc". In other words, I wonder if there are other header files that may give rise to similar problems, and which macros are they defining. All the best,
Roberto

On Sun, 26 Apr 2009, Roberto Bagnara wrote:
It sucks, but I guess it would be nice to occasionally build PPL and run the testsuite on linux on a PC with CPPFLAGS='-include sys/reg.h'.
we will certainly follow your suggestion. Unfortunately, this seems very "ad hoc". In other words, I wonder if there are other header files that may give rise to similar problems, and which macros are they defining.
I completely agree, hence my "it sucks". Note that this kind of extreme pollution is considered a bug, see:
http://bugs.opensolaris.org/view_bug.do?bug_id=6400595
I know it affected at some point at least PPL, CGAL and freetype. Maybe it will eventually be fixed... (it does not look like a lot of work)
But indeed, conflicting C headers, especially when it comes to macros, are a never ending problem.
participants (2)
-
Marc Glisse
-
Roberto Bagnara