Skip to content

-CriotR fixes to CHM package

Summary

This merge request fixes a problem in the chmwriter.pas unit that caused build failures under -CriotR rules, due to -1 appearing in an unsigned 32-BIT integer parameter (it has been changed to $FFFFFFFF).

What is the current bug behavior?

When building the compiler under -CriotR rules on x86_64-win64 and i386-win32, package build failures occured within the chmwriter.pas unit.

What is the behavior after applying this patch?

The errors no longer appear and "make all" is successful.

Relevant logs and/or screenshots

...
chmwriter.pas(1192,35) Error: Range check error while evaluating constants (-1 must be between 0 and 4294967295)
chmwriter.pas(1207,35) Error: Range check error while evaluating constants (-1 must be between 0 and 4294967295)
chmwriter.pas(1213,35) Error: Range check error while evaluating constants (-1 must be between 0 and 4294967295)
chmwriter.pas(1219,35) Error: Range check error while evaluating constants (-1 must be between 0 and 4294967295)
chmwriter.pas(1225,35) Error: Range check error while evaluating constants (-1 must be between 0 and 4294967295)
chmwriter.pas(1234,33) Error: Range check error while evaluating constants (-1 must be between 0 and 4294967295)
chmwriter.pas(1246,35) Error: Range check error while evaluating constants (-1 must be between 0 and 4294967295)
chmwriter.pas(2568) Fatal: There were 7 errors compiling module, stopping
Fatal: Compilation aborted

Merge request reports