Because it doesn't generate any code. There's no difference between "a""b" and "ab". The "" just doesn't exist in the compiled executable. It just doesn't. There's nothing to test against.
the compiler have an option for i avoid the implicit concatenation?
No. Even if it did, all it would mean would be that "a""b" would give a compiler error.