forall(otype T)
struct wrap
{
    T val;
};

forall(otype T)
int ?==? (wrap(T) lhs, wrap(T) rhs)
{
    return 0;
}

/*
struct wrap(int) 0;
/*/
forall(otype T)
struct wrap(T) 0;
//*/

int main(int argc, char const *argv[])
{
    wrap(int) test;
    if(test == 0) { return 1; }
    return 0;
}
