I’m using gdb to debug some c++ code. At the moment the code I’m looking at iterates through an array of pointers, which are either a pointer to some object or a NULL pointer.
If I just display list[index]->member it’ll complain when list[index] is null. Is there anyway to display the member only if list[index] is not null? I know you can set conditional breakpoints (condition <bp-num> <exp>) but I’m not sure how that’d help.
The code in question is:
for (int i=0;i<BSIZE*BSIZE;i++){
if (vms[i]==target) {valid=true; break;}
}
where vms is the array of pointers.
Since
displayaccepts arbitrary expressions, you can try something like the followingdisplaycommand:I’m not sure if that cleans things up well enough for what you want – you’ll still get a display, but it won’t be a complaint.