This is similar to #74
int a[2];
int (&&f())[2]
{
return static_cast<int(&&)[2]>(a);
}
is transformed to
int a[2];
int (&&)[2] f()
{
return static_cast<int (&&)[2]>(a);
}
And
void g()
{
}
void (&&f())()
{
return g;
}
into
void g()
{
}
void (&&)() f()
{
return g;
}