Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
recursive type or function dependency context too complex
A template definition was recursive or exceeded complexity limits.
Examples
The following sample generates C1202.
// C1202.cpp
// processor: x86 IPF
template<int n>
class Factorial : public Factorial<n-1> { // C1202
public:
operator int () {
return Factorial <n-1>::operator int () * n;
}
};
Factorial<7> facSeven;
Possible resolution.
// C1202b.cpp
// compile with: /c
template<int n>
class Factorial : public Factorial<n-1> {
public:
operator int () {
return Factorial <n-1>::operator int () * n;
}
};
template <>
class Factorial<0> {
public:
operator int () {
return 1;
}
};
Factorial<7> facSeven;