
"Giovanni Bajo" <giovannibajo@libero.it> writes:
Neal D. Becker wrote:
gcc-3.4 doesn't seem to like boost iterator adaptor stuff, in particular. Also lambda.
Weird, I think I could compile most of those libraries without big problems. Any single test which reliably fails with 3.4.0?
Many errors are of this nature: src/c_to_r.hpp:83: error: there are no arguments to `base_reference' that depend on a template parameter, so a declaration of `base_reference' must be available
GCC 3.4.0 implements two-stage name lookup, which is not found in previous versions of GCC or MSVC 71 (that happens to be de-fact standard for Boost development). One of the net results is that names in dependent bases are not inspected during unqualified name lookup in templates. I suggest you review http://gcc.gnu.org/gcc-3.4/changes.html for more infos. In my experience, libraries which were previously compiled with an EDG compiler (Comeau / Intel) have almost no problems, while libraries developed only with MSVC, CW, or GCC need to be fixed.
We still do test all of Boost with many compilers implementing 2-phase lookup, including metrowerks, intel, and comeau. I'm surprised that you report it's turning up any Boost bugs, especially in iterator adaptors. -- Dave Abrahams Boost Consulting http://www.boost-consulting.com