Boost logo

Boost :

From: Jonathan Wakely (cow_at_[hidden])
Date: 2004-10-07 11:44:19


On Thu, Oct 07, 2004 at 04:24:56PM +0200, Markus Sch?pflin wrote:

> John Maddock wrote:
>
> >In which case I'm lost as to why the config headers aren't doing the
> >right thing anyway - including <utility> should be enough solve the
> >issue as it does on linux :-(
>
> I think I found the reason why it doesn't work. As we all known by now,
> _REENTRANT is defined in a header included by "gthr.h".
>
> schoepf_at_AREA51:/opt/gcc/include/c++/3.4.2> /usr/local/bin/grep -r "gthr.h" .
> ./fstream:#include <bits/gthr.h>
> ./bits/concurrence.h:#include "bits/gthr.h"
> ./bits/locale_classes.h:#include <bits/gthr.h>
> ./bits/stl_threads.h:// The only supported threading model is GCC's own
> gthr.h abstraction
> ./bits/stl_threads.h:#include "bits/gthr.h"
> ./ext/bitmap_allocator.h:#include <bits/gthr.h>
> ./ext/mt_allocator.h:#include <bits/gthr.h>
> ./ext/rope:# include <bits/gthr.h>
> ./ext/rope:#error __GTHREAD_MUTEX_INIT or __GTHREAD_MUTEX_INIT_FUNCTION
> should be defined by gthr.h abstraction layer, report problem to
> libstdc++@gcc.gnu.org.
> ./alphaev56-dec-osf5.1/bits/c++io.h:#include <bits/gthr.h>
>
> And none of these headers is included by <utility>.
>
> But as soon as you use any I/O headers, the file gets included via
> "c++io.h" which is included by <iosfwd>. :-(
>
> What a mess!!!

Indeed. I'll ask about this on the libstdc++ list.

jon

-- 
"Capitalism is the extraordinary belief that the nastiest of men, for the
 nastiest of reasons, will somehow work for the benefit of us all."
	- John Maynard Keynes

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk