I compared the current version to mIRC v6.35, which is the baseline comparison for the v7.x series, and it seems to behave in the same way.

The /timer command checks the delay value when the command is called and halts the script at that point if it overflows. However, if the value overflows later on during millisecond calculations, it triggers the timer immediately and stops it.

I could change this so that /timer checks for values larger than 2147483 and halts the script with an error immediately, however this would break all existing scripts that use larger values, expecting the script not to be halted, and for the timer to be triggered.