Tcl Source Code

Artifact [b4340fec32]
Login
EuroTcl/OpenACS 11 - 12 JULY 2024, VIENNA

Artifact b4340fec32ffa83f8dfe0ed1183763a3b654bf2142135b135a8dd0e8c6b71832:

Ticket change [b4340fec32] - New ticket [ee4d701bb3] append.test strangely fails with -singleproc 1 (but not with 0), if it compare utf32string representations (on "constructed" smiley). by sebres 2024-05-23 20:46:38.
D 2024-05-23T20:46:38.516
J assignee nobody
J closer nobody
J cmimetype text/x-markdown
J comment If\sone\swould\stest\sappend\swith\s-singleproc\s1,\stest\sappend-3.10\sfails,\showever\sit\sshows\sthe\ssame\sinternal\srepresentation.\r\n\r\nAlso\stesting\sof\s`append-3.10`\ssolely\sdoesn't\sfail,\showever\sby\smatch\s`append-3.*`\sit\sdoes.<br/>\r\nBy\san\sattempt\sto\sdebug\sit,\sI\scould\sreduce\sthe\sfailing\scommand\sto\sexactly\s2\stests:\r\n\r\n```\r\n./tcltest.sh\s-file\s'append.test'\s-singleproc\s1\s-match\s'append-3.6\sappend-3.10'\s-verbose\stp\r\n```\r\n\r\n(again,\swithout\s-singleproc\sit'd\snot\sfail\sat\sall)\r\n\r\n\r\nStrange\sis,\sif\sI\sadd\ssmall\soutput\sfor\sdebug\sto\s[tcltest::CompareStrings,\s(line\s1737)](./file?ci=tip&name=library/tcltest/tcltest.tcl&ln=1737):\r\n\r\n```\r\nputs\s"***[tcl::unsupported::representation\s$expected]\\n***[tcl::unsupported::representation\s$actual]\\n***[expr\s{$expected\seq\s$actual}]***"\r\n```\r\n\r\nand\stest\sit\swith\sabove-mentioned\scommand,\sI\ssee:\r\n\r\n```\r\n...\r\nappend.test\r\n----\sappend-3.6\sstart\r\n***value\sis\sa\spure\sstring\swith\sa\srefcount\sof\s10,\sobject\spointer\sat\s0xd5ad60,\sstring\srepresentation\s"😂"\r\n***value\sis\sa\sutf32string\swith\sa\srefcount\sof\s6,\sobject\spointer\sat\s0xd62238,\sinternal\srepresentation\s0x38a2898:0x0,\sno\sstring\srepresentation\r\n***1***\r\n++++\sappend-3.6\sPASSED\r\n----\sappend-3.10\sstart\r\n***value\sis\sa\sutf32string\swith\sa\srefcount\sof\s8,\sobject\spointer\sat\s0xd61db8,\sinternal\srepresentation\s0x38a0990:0x0,\sstring\srepresentation\s"😂"\r\n***value\sis\sa\sutf32string\swith\sa\srefcount\sof\s6,\sobject\spointer\sat\s0xd62238,\sinternal\srepresentation\s0x38a2898:0x0,\sno\sstring\srepresentation\r\n***0***\r\n\r\n====\sappend-3.10\sappend\ssurrogates\sFAILED\r\n====\sContents\sof\stest\scase:\r\n\r\n\s\s\s\sset\sx\s\\uD83D\r\n\s\s\s\sstring\srange\s$x\s0\send\r\n\s\s\s\sappend\sx\s\\uDE02\r\n\r\n----\sResult\swas:\r\n\\U0001F602\r\n----\sResult\sshould\shave\sbeen\s(exact\smatching):\r\n\\U0001F602\r\n====\sappend-3.10\sFAILED\r\n\r\n```\r\n\r\n(so\sthere\sis\sno\sstring\srepresentation\sin\sthe\s2nd\sobject\sin\sboth\scases,\sbut\sone\ssucceeds,\showever\sanother\sdoesn't)\r\n\r\nTrying\sto\srewrite\sthe\stest\sto\sa\sscript\sto\sfind\sthe\sheisenbug,\sbecame\sconfused\sstill\smore\s-\sit\schanges\sthe\sresult\svice\sversa\s(now\sin\s3.6\sit\sis\snot\sequal,\sbut\sin\s3.10\sit\sis:\r\n\r\n```\r\n\s\s#\s3.6:\r\n\s\sset\sx\s\\uDE02\r\n\s\sputs\s3.6\\t[expr\s{[set\sx\s\\uD83D$x]\seq\s"\\uD83D\\uDE02"}]\r\n\s\s#\s3.10:\r\n\s\sset\sx\s\\uD83D\r\n\s\sstring\srange\s$x\s0\send\r\n\s\sputs\s3.10\\t[expr\s{[append\sx\s\\uDE02]\seq\s[string\srange\s\\uD83D\\uDE02\s0\send]}]\r\n```\r\n\r\nso\sit\sresults\sto:\r\n\r\n```\r\n\s\s3.6\s\s\s\s\s0\r\n\s\s3.10\s\s\s\s1\r\n```\r\n\r\nWeird.\r\n\r\nCan\ssomeone\s(familiar\swith\sthe\snew\sunicode\sor\sutf)\stake\sa\scloser\slook\shere,\splease.\r\n\r\nMy\sbuild\swas\sfor\swindows,\sx86\smingw\stoolchain\swith\sgcc\s11.2.0,\sconfigured\sas:\r\n\r\n```\r\n$\s../configure\s--disable-zipfs\s--enable-time64bit\s#\s(--disable-64bit,\s'cause\sx86)\r\n```\r\n(didn't\stested\sfor\sother\syet).
J foundin 8.7+
J is_private 0
J login sebres
J priority 5\sMedium
J private_contact 50e9528765c18296566374b3fde2df942c394efd
J resolution None
J severity Minor
J status Open
J submitter sebres
J subsystem 16.\sCommands\sA-H
J title append.test\sstrangely\sfails\swith\s-singleproc\s1\s(but\snot\swith\s0),\sif\sit\scompare\sutf32string\srepresentations\s(on\s"constructed"\ssmiley)
J type Bug
K ee4d701bb3e0d0351261bfb25b87c3ac206b86cc
U sebres
Z 1b0225b9438777ed3a963ed9a46baaf6