Posted to tcl by evilotto at Thu Aug 22 20:12:54 GMT 2013view raw
- package require critcl
- critcl::cproc mkbad {Tcl_Interp* i char* st} void {
- Tcl_DString d;
- char *end=st+strlen(st);
- Tcl_DStringInit(&d);
- do {
- char *n=Tcl_UtfNext(st);
- Tcl_DStringAppend(&d, st, n-st);
- st=n;
- } while (st<end);
- Tcl_DStringResult(i,&d);
- Tcl_DStringFree(&d);
- }
- set a [mkbad ""]
- set b "\0"
- puts [expr {$a ne $b}]
- puts [expr {[binary encode hex $a] eq [binary encode hex $b]}]
- puts [string length $a]
- puts [string length $b]
- puts [tcl::unsupported::representation $a]
- puts [tcl::unsupported::representation $b]