Jaakko Jarvi <[EMAIL PROTECTED]> writes: > I've noticed that call_traits doesn't support function references. > I'm not sure whether it makes sense to store function references in > optionals, though, but in any case. > > Something like this fails: > > typedef void (&afuncref)(int); > typedef call_traits<afunc>::reference t; > > The problem is that the call_traits templates have other typedefs in > the same class, e.g. const_reference, which gets instantiated as > well, and it adds the const qualifier to a function type.
Just another reason not to write degenerate "traits BLOB" metafunctions. call_traits, if it's useful for anything (which I sometimes wonder about because I have a hard time figuring out what it does), should be rewritten as separate individual metafunctions. -- Dave Abrahams Boost Consulting www.boost-consulting.com _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost