Boost logo

Boost :

Subject: Re: [boost]  [type_traits] MSVC rejects typename -- why?
From: Vicente BOTET (vicente.botet_at_[hidden])
Date: 2011-03-24 15:58:14


Hi,

It seems the compiler is not seen it is inside an outer macro.
In this case it seems that we need another macro e.g.BOOST_NESTED_TYPENAME. You could try to follow the protocol of adding a new macro andpropose apatch to John.

An other alternative: I suspect that the nested structure is code that you generate with your macros in Boost.Local orBoost.Contract. I propose you to define a nested template

template
void f(T& x) {
template
struct s {
T g() {
typename boost::remove_reference::type i = 0;
return i;
}
};
x = s().g();
}

HTH,
Vicente


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