[OT] Which IDE / Editor do you use?
Artur Skawina
art.08.09 at gmail.com
Sat Sep 14 12:52:52 PDT 2013
On 09/14/13 21:15, Paulo Pinto wrote:
> So much work when one could just call the debugger from running code,
>
> http://msdn.microsoft.com/en-us/library/f408b4et.aspx
>
> at least on Windows. :)
// version (x86|x86_64)
enum __debugbreak = q{asm { "int $3"; }};
void main() {
import std.stdio;
auto a = 42;
writeln(a);
mixin (__debugbreak);
writeln(a);
}
$ gdc -O3 -g explbp.d -o explbp
$ gdb ./explbp
(gdb) run
42
Program received signal SIGTRAP, Trace/breakpoint trap.
D main () at explbp.d:10
10 writeln(a);
(gdb) bt
#0 D main () at explbp.d:10
#1 0x00000000004082af in rt.dmain2._d_run_main.runMain (this=0x7fffffffe480)
at ../../../../libphobos/libdruntime/rt/dmain2.d:620
#2 0x0000000000408a0f in rt.dmain2._d_run_main() (this=this at entry=0x7fffffffe480, dg=...)
at ../../../../libphobos/libdruntime/rt/dmain2.d:595
#3 0x0000000000408c30 in rt.dmain2._d_run_main.runAll (this=0x7fffffffe480)
at ../../../../libphobos/libdruntime/rt/dmain2.d:630
#4 0x0000000000408a0f in rt.dmain2._d_run_main() (this=this at entry=0x7fffffffe480, dg=...)
at ../../../../libphobos/libdruntime/rt/dmain2.d:595
#5 0x0000000000408ba0 in _d_run_main (argc=1, argv=<optimized out>, mainFunc=<optimized out>)
at ../../../../libphobos/libdruntime/rt/dmain2.d:639
#6 0x00007ffff762b662 in __libc_start_main (main=0x408bd0 <main>, argc=1,
ubp_av=0x7fffffffe5c8, init=<optimized out>, fini=<optimized out>,
rtld_fini=<optimized out>, stack_end=0x7fffffffe5b8) at libc-start.c:225
#7 0x0000000000403055 in _start () at ../sysdeps/x86_64/start.S:123
(gdb) p a
$1 = 42
(gdb) c
Continuing.
42
[Inferior 1 (process 32095) exited normally]
(gdb) q
DMD might support inline asm too, with a different syntax; never used it.
artur
More information about the Digitalmars-d
mailing list