Test f0 fails (string length is 1) and test f2 throws an index out of bounds exception. What's not obvious from the way the test is written is that \a5C is the backslash character.
str foo = "\a5C\a5D";
test bool f0() = size(foo) == 2;
test bool f1() = foo[0] == "\a5C";
test bool f2() = foo[1] == "\a5D";
str bar = "\a5C" + "\a5D";
test bool b0() = size(bar) == 2;
test bool b1() = bar[0] == "\a5C";
test bool b2() = bar[1] == "\a5D";