template <class X >
struct outside
{
struct inside
{
X i;
X double_value() { return 2.0*i; } //inline COMPILES OK
X value();
} *list;
};
//COMPILER REGARDS THIS EXTERNAL FUNCTION BODY
//DEFINITION AS SYNTAX ERROR:
template <class X>
X outside<X>::inside::value()
{
return i;
}
// End of File