Summary: | Incorrent code line number on breakpoint set by function name | ||
---|---|---|---|
Product: | gdb | Reporter: | Ricardo Catalinas Jiménez <jimenezrick> |
Component: | breakpoints | Assignee: | Not yet assigned to anyone <unassigned> |
Status: | RESOLVED INVALID | ||
Severity: | normal | CC: | jan, jimenezrick |
Priority: | P2 | ||
Version: | HEAD | ||
Target Milestone: | --- | ||
Host: | Target: | ||
Build: | Last reconfirmed: | ||
Attachments: | Test case |
Created attachment 5820 [details] Test case *Tested on GDB 7.3.50.20110624 x86_64* In the next code, add a breakpoint in the function `f' with the command `break f'. The breakpoint is placed after the last brace of `for (;;)' which is wrong. It makes bypass the first iteration of the loop. When the breakpoint is hit then i=1: ================================================= void f(char *s, int i) { for (;;) { if (s[i++] == '\n') break; } <--- breakpoint set here with `break f' with i=1 } int main(int argc, char *argv[]) { char buf[] = "0123456789\n"; f(buf, 0); return 0; } =================================================