[Lazarus] GDB - cannot perform pointer math on incomplete types
David Emerson
dle3ab at angelbase.com
Tue Dec 4 04:11:20 CET 2012
Martin wrote:
>
> Still if you can get me the log + unit source ?
>
> because the IDE in many cases tries to work those out. So I wonder what
> happens behind the curtains...
Hmm I am working on it ... can't really share the sources :( but I am
trying to build a miniature version to reproduce it. In the meantime:
The watch item I created looks like this:
tsrl_ag_cp(f_ag).f_curve.f_cps.f_list[0]
and after your suggestion, was fixed like this:
^pointer(tsrl_ag_cp(f_ag).f_curve.f_cps.f_list)[0]
SELF is a class with field f_ag : tsrl_ag
tsrl_ag_cp descends from tsrl_ag
tsrl_ag_cp has field f_curve : tsrl_curve
tsrl_curve has field f_cps : tsrl_ag_cp_list
tsrl_ag_cp_list descends from t_ordered_ag_list
t_ordered_ag_list = specialize gt_unsorted_pointer_list <tsrl_ag>
generic gt_unsorted_pointer_list <_class> = class
(t_unsorted_pointer_list)
t_unsorted_pointer_list is a class with field f_list : ptr_array
and type ptr_array = array of pointer
So as you can see it is a little complicated :-)
More information about the Lazarus
mailing list