This is not for restarting the discussion, but I think it's worth to note.
From ISO 7185 Pascal (point 6.6.6.3) and ISO 10206 Extended Pascal (6.7.6.3):
round(x)
From the expression x that shall be of real-type, this function shall return a result of integer-type.
If x is positive or zero, round(x) shall be equivalent to trunc(x+0.5); otherwise, round(x)
shall be equivalent to trunc(x-0.5).
And indeed, in modes ISO and ExtendedPascal the result of round(2.5) is 3.