namespace Rose
{
    template<typename T>
    struct RemoveReference
    {
        typedef T Type;
    };

    template<typename T>
    struct RemoveReference<T &>
    {
        typedef T Type;
    };
}

int main()
{
    Rose::RemoveReference<int &>::Type a = 1;
}