Boost logo

Boost :

From: Peder Holt (peder.holt_at_[hidden])
Date: 2006-05-12 01:57:09


It turns out that BOOST_TYPEOF_NESTED_TYPEDEF has a problem when used inside
functions on VC8.0 (possibly other compilers as well)
This is because BOOST_TYPEOF_NESTED_TYPEDEF internally defines a member
template:

struct a {
  template<typename T>
  struct b{
  };
};

VC8.0 doesn't handle this (error C2892: local class shall not have member
templates)

It is possible to avoid this problem, but this would cripple
BOOST_TYPEOF_NESTED_TYPEDEF because it would reintroduce the
BOOST_TYPEOF_LIMIT_SIZE limitation on the expression complexity.

The alternative is to disallow NESTED_TYPEDEF inside functions, and write a
note on this in the docs. Is this acceptable?

Regards,
Peder


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