Boost logo

Boost Users :

From: Darin Adler (darin_at_[hidden])
Date: 2002-06-06 08:53:53


On Tuesday, June 4, 2002, at 07:16 AM, Bobby Thomale wrote:

> However, in the PowerPlant header PP_Macros.h, the __MACH__ symbol is
> defined and set to zero:

OK. This is probably a minor mistake on Metrowerks' part, but it's
reasonable, and not a big deal.

> I was able to work around the problem for now by making the Boost
> libraries
> check for both the existance of __MACH__ and the value:
>
> #if defined(__MACH__) && __MACH__
>
> Seems to work.

Yes, I'd recommend that we change Boost to do the check this way. But
it should be abbreviated to:

#if __MACH__

The C and C++ standards guarantee that works properly with an undefined
symbol. I'm going to make this change in cvs.

> However, I am curious. Which way is the right way? Is the __MACH__
> symbol's existance or its value supposed to signal whether or not it is
> "turned on"? The boost headers seem to think it is its existance, but
> the
> PowerPlant headers seem to think it is its value.
>
> I want to report the problem, but I am not sure whose code needs to
> change,
> PowerPlant or Boost. Ideas?

Boost should change. I have no idea whether the PowerPlant thing is a
bug or not, but we should just fix both sides.

     -- Darin


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net