From: support-1_at_[hidden]
Date: 2002-03-24 20:22:18


I'm trying to resolve an issue with VC7 and latest
boost/config/compiler/visualc.hpp

In theory VC7 (_MSC_VER == 1300) support dependent types in template
value parameters.

However there seems to be one cavet to this. When the compiles /Za
(Disable Language Extensions)
option is enabled this support seems to be disabled!!!

The following test code fails with /Za but is accepted with /Ze

template<class MLCG1, typename MLCG1::result_type val>
class Fred
{
};

Given this is true should visual.hpp be changed so that
BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS is again defined
for VC7?

I ask this because there seems to be no way that the header file can
automatically detect this compiler setting in C++. The macro __STDC__
is defined when compileing a C file but not when compiling C++.

Any suggestions on the best way to proceed??

Michael Stevens
Senior Research Engineer, Australian Centre for Field Robotics