[bug] using boost::range and boost::array in MSVC 6.0

MSVC 6.0 gives an internal compiler error when I include the following headers in the order below: #include <boost/array.hpp> #include <boost/range.hpp> The reason for this ICE (besides MSVC 6.0 being a non-conformant compiler) is the fact that several files in the boost/range/ subdirectory declare functions having a parameter called "array". It seems that MSVC has problems realizing that this is the name of a new variable, not an already existing class. When I renamed these parameters everything compiled fine. Would it be possible to change these parameters to a name that isn't the name of a boost class, something like c_array maybe? Thank you, Joe Gottman

"Joe Gottman" <jgottman@carolina.rr.com> wrote in message news:d5bl1k$lom$1@sea.gmane.org... | MSVC 6.0 gives an internal compiler error when I include the following | headers in the order below: | | #include <boost/array.hpp> | #include <boost/range.hpp> | | The reason for this ICE (besides MSVC 6.0 being a non-conformant | compiler) is the fact that several files in the boost/range/ subdirectory | declare functions having a parameter called "array". It seems that MSVC has | problems realizing that this is the name of a new variable, not an already | existing class. When I renamed these parameters everything compiled fine. | Would it be possible to change these parameters to a name that isn't the | name of a boost class, something like c_array maybe? I think it would :-) A few days ago I had a similar problem becuase I used a class class Derived in my regression tests...that collided with a template parameter in the iterator library. I'll change the parameter names ASAP. -Thorsten
participants (2)
-
Joe Gottman
-
Thorsten Ottosen