One way to fix the parser of $-substitution accepting non-ASCII varnames.
I like this patch better.  Retain the byte orientation of the parser.
Same issue in expr parser also tested and fixed.
mege 8.5
Stop using isalnum(.).  Its results are not portable.  Replace with our
own private routine TclIsBareword() that does exactly what we want.
The isalpha(.) calls remaining in the expr parser still bring nonportability.
Commit a test that demonstrates that.
Limit isalpha(.) calls in the expr parser to only apply to known ASCII
arguments to make the results portable.
[d2ffcca163] Limit parsing results that are documented to accept only
ASCII chars to actually follow that constraint.  This requires not trusting
isalnum(.) and isalpha(.) to deliver portable identical results.