Boost logo

Boost :

From: williamkempf_at_[hidden]
Date: 2001-02-05 12:13:15


--- In boost_at_y..., Jens Maurer <Jens.Maurer_at_g...> wrote:
>
> Paul Selormey wrote:
> > I understand the whole boost effort is about standard library.
> > However, I am working currently on an MFC component, and the users
> > require level 4 compilation.
>
> I'm confused. What's "level 4 compilation"?

Compiling with VC++ set to "warning level 4", the highest available
setting. The "default" is level 3.

> > To achieve this without extensive use of #prama(...) in the
VC++6.0,
> > I try to avoid the standard stuff. The regexp++ headers are
included
> > in my precompiled header enclosed in #prama(...).
>
> So it seems that your particular environment requires #pragma's
> around the regexp++ headers to compile. So be it; far worse
workarounds
> have been effected for MSVC.

His complaint is with the need for #pragmas in user code when using
the STL. However, this is an artifact of the STL shipped with VC++.
The latest Dinkumware library compiles with no warnings at level 4.
So this is even less of a concern for Boost for many reasons.

> > The last time I compiled the Regexp++ with the level 4 (before the
> > boost effort and have reported this to you), I had over 5000
warnings!
>
> Ah, "level 4" refers to some mode enabling lots of warnings. Are
most of
> these warnings being provoked by the standard library or by the
regular
> expression library?

Probably by both, though I've not compiled Regexp++ code yet.
Frankly, level 4 produces a lot of spurious warnings on template
code, especially in Debug builds (where even level 3 will produce
more warnings than you can shake a stick at). It's my understanding
that MS is addressing this in the next release. Again, a non-issue
for Boost.

> If it's from the former, complain to your vendor. As a side note,
I've
> just compiled the regression test for the latter with gcc's "-Wall -
W"
> flags, which enables pretty much all warnings gcc knows about.
However,
> that resulted in only very few warnings (mostly signed/unsigned
compare).

VC++ isn't so kind, but it's not something that should be addressed
by Boost.
 
> > My humble request was for us to work with the old method of
callback,
> > instead of the new standard stuff.
>
> Your desire to avoid the C++ standard library seems to indicate
that the
> standard headers are provoking a sizeable proportion of the warnings
> you give the impression not to like. Note, however, that boost
libraries
> are designed to work well with the C++ standard library and not to
avoid
> it at all cost.

More importantly, it should be trivial to write a function object
that works with traditional "C callbacks" with out using the standard
library. So I don't see a need for modification of Regexp++ in this
regard.
 
Bill Kempf


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