Hello all,
I currently have the problem that I want to partially specialize a
traits class for custom template types that are nested within another
template. Here is a small example illustrating what I'm trying to do:
----------------------------------------------------------------------
template<typename T> struct some_traits;
template<typename U>
struct Wrapper {
template<typename V>
struct Nested {
// ...
};
};
template<typename U, typename V>
struct some_traits<typename Wrapper<U>::template Nested<V> > {
// ...
// Traits definition
// ...
};
----------------------------------------------------------------------
When instantiating the some_traits template with a specialization of
Wrapper::Nested the compiler (GCC in this case) fails to match it to the
partial specialization and instantiates the primary template instead.
Is there any way to make this work as expected?
Best regards,
Kimon
--
[ See http://www.gotw.ca/resources/clcm.htm
for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]