[test] syn/clash.t before GH #1103

Tests to show problems with illegal escape sequence rules
foo\o => fooo
[core] change Illegal escape sequence policy

Previously: Silently ignore illegal escapes even for a-zA-Z
     and change the string from "foo\o" to "fooo"
Now: Throw "Illegal escape sequence \o in foo\o"
See GH #1103
[core] Add throw_illegal_escape_char, add arg to throw_illegal_escape

Harmonize "Illegal escape sequence \\%c in %Ss" and
"Illegal escape sequence %Ss" error messages.
Also allow \? \'
See GH #1103
[test] syn/clash.t after the GH #1103 fix

die now with "Illegal escape sequence \o in 'foo\o'"
Update ChangeLog
[pmc] file: UNUSED SELF [cage]
Merge branch 'smoke-me/illegal-escape-gh1103'