Menu

#1450 Variable substitution parsing limited to ASCII alphanumerics

obsolete: 8.3.2
open
8
2008-11-05
2001-03-14
No

Dollar-substitution breaks down in the presence of characters that are not in ISO-8859-1.

The problem is that tclParse.c (line 1740 in 8.4a2) has the code:

c = UCHAR(ch);
if (isalnum(c) || (c == '_')) { /* INTL: ISO only, UCHAR. */

I think this should almost certainly be replaced with a call to Tcl_UniCharIsAlnum.

Discussion

  • Jeffrey Hobbs

    Jeffrey Hobbs - 2001-08-02
    • assigned_to: nobody --> hobbs
     
  • Jeffrey Hobbs

    Jeffrey Hobbs - 2001-08-06

    Logged In: YES
    user_id=72656

    More is necessary than just adjusting that one line, but
    there is also the question of whether that is the intention
    or not. The problem is that vars written in \u sequence
    won't get interped inside ${...}, but who is doing that?

     
  • Kevin B KENNY

    Kevin B KENNY - 2008-05-26

    Logged In: YES
    user_id=99768
    Originator: YES

    dgp claimed on the chat to be looking at the possibility of
    recognizing non-Latin1 names

     
  • Kevin B KENNY

    Kevin B KENNY - 2008-05-26
    • assigned_to: hobbs --> dgp
     
  • Don Porter

    Don Porter - 2008-11-05
    • priority: 5 --> 8
     
  • Don Porter

    Don Porter - 2008-11-05
    • summary: Dollar-substitution and non-Latin-1 --> Variable substitution parsing limited to ASCII alphanumerics