Hello everyone.
I'm trying to debug programs compiled with DMD using GDB.
My dmd version is 2.074.1, gdb version is 7.11.1, operating
system is Ubuntu 16.04.
I have this little helloworld.d:
import std.stdio;
void main() {
auto a = 5;
writeln("Hello, world!");
foreach (i; 0 .. 5)
a = a + i;
writeln("aaaaaaaa");
writeln(a);
}
Then I compile it with tag -g and when I try to debug it with
GDB, I get this: pastebin.com/GJD7q9XM
As you see, GDB seems to have wrong info about line numbers.
When I compile it with tag -gc, it's basically all the same
except I need to write 'list _Dmain' in order to access the
source code from gdb:
pastebin.com/5TkqxEvu
In bigger projects current line in GDB can jump all over the
place without any obvious logic.
Do you have any ideas how to fix it?
Thank you.