Description: |
Old Tcl scripts running on 8.6.x+ with corresponding Tcllib for crc32 package produce a checksum.
Now with Tcl 9.0.1 and corresponding Tcllib the crc32 package do the same,
but for some file's content an error occur.
Error message from "::crc::crc32" is "integer value too large to represent".
Problem seems to be inside of an operation of
"::crc::Crc32Update" and/or "::crc::Crc32Final".
If You install BAWT 3.0.1 64-Bit Tcl/Tk 9.0.1 for/on Windows 10/11,
You can check at least with the two following smallest files available:
C:\Tcl\lib\poTcllib3.0.0\poExec.tcl 2024-08-16 20:26:04 4108
C:\Tcl\lib\tcllib2.0\valtype\luhn5.tcl 2024-09-13 19:48:12 4121
Both files have correct UTF-8 encoding with simple UNIX-LF.
So there is another reason for this problem than the encoding of the file's contents.
(My first thinking is therefore wrong and I changed this description.)
Can anybody debug deeper into this?
Simple test in Tcl:
package require crc32
::crc::crc32 -filename "C:/Tcl/lib/tcllib2.0/valtype/luhn5.tcl"
I use on ActiveTcl 8.6.4.1 crc32 1.3.2 and found it on BAWT-distribution 3.0.1,
Tcllib 2.0, crc32 1.3.4 thanks.
Best greetings, Thomas [TWu]
|