Why do we need to expand string literal into `LiteralChar`s? `LiteralString` char-by-char comparison is not fast enough?