Ben2209 Ben2209 - 1 year ago 117
C Question

gdb: No symbol "i" in current context

While debugging a C program in gdb I have a breakpoint in a for loop. I cannot print the value of "i" ( I get : No symbol "i" in current context.). I can print the value of all the other variables. Is it normal?

Here is the loop:

for (i=0; i < datasize; i++){
if ( feature_mask[i] > 0 ){
k = feature_mask[i] - 1;
if (neighbors[k][nmax-1] != 0){
neighbors[k][nmax-1] = bvalue;
feature_mask[i] = -feature_mask[i];


Answer Source

It has probably been optimised out of your compiled code as you only use feature_mask[i] within the loop.

Did you specify an optimization level when you called your compiler? If you were using gcc, then just omit any -O options and try again.