Boost logo

Boost :

From: Vesa Karvonen (vesa.karvonen_at_[hidden])
Date: 2002-01-03 06:01:23

From: "Jens Maurer" <Jens.Maurer_at_[hidden]>
> Vesa Karvonen wrote:
> Have you reported all the bugs that you found to the respective vendors?

After I've constructed minimal tests to reveal the preprocessor bugs, I will
submit bug reports. Unfortunately I don't have access to all the buggy
compilers. Searching the online bug database of a particular compiler vendor,
I couldn't find a description of a preprocessor bug that would explain the
preprocessor behaviour.

> > Alternatively, I'm considering the possibility of using
> > BOOST_NO[_COMPILER]_CONFIG to disable workarounds for buggy compilers (at
> > library author's discretion).
> Note, however, that some libraries use something like __BORLANDC__
> directly, so BOOST_NO_CONFIG wouldn't exactly help those.

I meant that workarounds could be disabled like this:

#if !defined(BOOST_NO_COMPILER_CONFIG) &&\
  defined(__MWERKS__) && __MWERKS__ <= 0x2406
// This is a workaround for a CodeWarrior PP bug. Strictly speaking
// this workaround invokes undefined behavior, but it works as desired.

> > Running the regression tests with a config for a
> > fully standards compliant compiler, the regression test suite could be
> > for conformance testing and the results could be posted on the Boost site.
> I'd be happy to do so (a separate HTML page) for the Unix platform
> test results that I maintain.

It would be interesting to see the results.

> I'm all in favor of having a BOOST_CONFIG_PREPROCESSOR_BUGGY config
> item with an appropriate test, however. This would solve the
> "conformance test" issue. (Or several, with _BUGGY replace by
> appropriate verbiage for each specific bug.)

"BUGGY" is too specific, but I don't have a list of all known preprocessor
bugs yet.

> > [...]concise conformance tests could also be very useful for
> > compiler vendors for regression testing[...]
> Boost.Config, in particular the detailed tests in libs/config/test, should
> solve that issue, I think.

Yes, I agree. I'll write the preprocessor conformance tests so that they can
be integrated to Boost.Config.

Boost list run by bdawes at, gregod at, cpdaniel at, john at