@@ directive

The @@ directive is stripped away from the output. It acts as a delimiter for the lexical scanner. For example putting @@ in the middle of an identifier causes the lexical scanner to see it as two distinct tokens.

Before translationAfter translation
@def x = 1
@def y = 2
@def xy = 3
int f()
{
    return x@@y;
}




int f()
{
    return 12;
}