Hi all.

I think I have tracked down a nasty bug in the Jacl parser. It seems
that unicode backslash sequences were not getting substituted
correctly. If you have some spare time, could you test out the
patch? Apply it like so (from the toplevel dir in the Jacl dist).

--- src/jacl/tcl/lang/Parser.java       1999/08/03 02:33:08     1.7
+++ src/jacl/tcl/lang/Parser.java       2000/03/15 01:23:45
@@ -1756,7 +1756,7 @@ 
            if (count == 0) {
                result = 'u';
            }
-           return new BackSlashResult((char)result, script_index);
+           return new BackSlashResult((char)result, script_index+1);
     case '\r':
     case '\n':
        if (c == '\r') {


patch -p 0 < unicode.patch

Then run the following test.

package require java
puts "doing full unicode replacement/conversion test, this can take
several minutes"
flush stdout
set max [expr {int(pow(2,16)) - 1}]

for {set i 0} {$i < $max} {incr i} {
  set n [format %04x $i]
  eval "set c \\u${n}"
  if {[string length $c] != 1} {
    error "incorrect conversion of \\u${n}, length [string length $c]"
  }
  set s [java::new String $c]
  if {$c != [$s toString]} {
    error "unicode value $max not passed through properly"
  }
}

if {$i != 65535} {
 error "not all tests were run"
} else {
 puts "all tests passed"
}


thanks
Mo Dejong
Red Hat Inc.


----------------------------------------------------------------
The TclJava mailing list is sponsored by Scriptics Corporation.
To subscribe:    send mail to [EMAIL PROTECTED]  
                 with the word SUBSCRIBE as the subject.
To unsubscribe:  send mail to [EMAIL PROTECTED] 
                 with the word UNSUBSCRIBE as the subject.
To send to the list, send email to '[EMAIL PROTECTED]'. 
An archive is available at http://www.mail-archive.com/tcljava@scriptics.com

Reply via email to