On Mon, 1 May 2017, Graham Ward via Lazarus wrote:
Hi,
Apologies if this email has been sent to the wrong location (I'm a brand
new user to the Lazarus emailing list).
Note I even tried the following line, which is obviously wrong (as the
array has a maximum index of 71)
ColIndex[175] := 500;
In other languages (that I am more familiar with) an exception (Error :
Array index outside of range) would have been raised. Why does the
Lazarus compiler not raise a similar error?
The Free Pascal compiler does not do range checking by default, you need to
enable it with -Cr (there is an option in the project option dialog).
araminta: ~ >fpc ta.pp -Cr
araminta: ~ >./ta
Runtime error 201 at $00010D50
$00010D50
araminta: ~ >cat ta.pp
Var
I : Integer;
A : Array of byte;
B : Array of byte;
begin
SetLength(A,12);
SetLength(B,12);
for I:=0 to length(A)+1 do
A[i]:=1;
end.
Michael.
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus-ide.org/listinfo/lazarus