template<typename T> struct moge
{
struct hage{};
};
template<typename T> void hoge(typename moge<T>::hage)
{}
hoge(moge<int>::hage{});

hogeの呼び出しができません。hogeをどう変えればいいですか。