struct a
{
template <int i> struct b
{
typedef int t;
};
struct b <1>
{
typedef double t;
};
};
int main()
{
a::b<0>::t x;
a::b<1>::t y;
return 0;
}
c3RydWN0IGEKewoJdGVtcGxhdGUgPGludCBpPiBzdHJ1Y3QgYgoJewoJCXR5cGVkZWYgaW50IHQ7IAoJfTsKCQoJc3RydWN0IGIgPDE+Cgl7CgkJdHlwZWRlZiBkb3VibGUgdDsKCX07Cn07CgppbnQgbWFpbigpCnsKCWE6OmI8MD46OnQgeDsKCWE6OmI8MT46OnQgeTsKCglyZXR1cm4gMDsKfQ==