On 04/12/2012 01:54, David Emerson wrote:
This error message has often befuddled me when debugging.
I've got a dynamic array, usually a type that I've created, e.g.
type longint_arr = array of longint
I'm using the Watch List and want to inspect one of the elements of such an
array, e.g. f_list[0]. But I get this error, which I guess comes from GDB.
Is there any way I can coerce it into giving me f_list[0], or even
f_list[1]?
I would need a complete example....
Also Laz/fpc version...
Sometimes this message appears, if you declare an array without a type name.
So instead of
type TMyArray = array of integer; var Foo: TMyArray;
you do:
var Foo: array of integer;
If the type of the element is named, then do
^integer(Foo)[1]
Nested Array
^^integer(Foo)[1][2]
If it is a static array "array[3..5]" then the pointer type cast still
starts at index 0 (so you must subtract the low bound from all indices)
It may also happen with nested arrays, and (unnamed (inline in "var"
declared) records)
var Foo: array of record ... end;
You may also try switching between stabs and dwarf (project options /
/linking)
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus