Throwing InvalidMemoryOperationError
Etienne Cimon via Digitalmars-d
digitalmars-d at puremagic.com
Thu Jun 4 10:51:30 PDT 2015
On Thursday, 4 June 2015 at 17:43:35 UTC, Adam D. Ruppe wrote:
> If int 3 doesn't work for some reason btw, you could always
> just deliberately write to a null pointer and trigger a
> segfault in the overridden function, would have the same result
> in the debugger.
>
> I feel like this onError thing is meant to be overridable by
> importing core.exception too, but I don't see that in the
> source. The linker-based override definately works today though!
So far I've tried the null pointer to get a segmentation fault.
It failed. I'm trying to rebuild gdb because this error is what I
got:
Message: Process 61701 (gdb) of user 0 dumped core.
Stack trace of thread 61701:
#0 0x0000000000629bdf make_vector_type (gdb)
#1 0x0000000000670a18 read_type_die (gdb)
#2 0x000000000066ee87 lookup_die_type (gdb)
#3 0x000000000067002a read_type_die (gdb)
#4 0x000000000066ee87 lookup_die_type (gdb)
#5 0x0000000000672aeb new_symbol_full (gdb)
#6 0x0000000000674e1f process_die (gdb)
#7 0x0000000000674a2b process_die (gdb)
#8 0x0000000000675031 process_die (gdb)
#9 0x0000000000678e57 dw2_do_instantiate_symtab
(gdb)
#10 0x0000000000679f38 dwarf2_read_symtab (gdb)
#11 0x00000000005e4451 psymtab_to_symtab (gdb)
#12 0x00000000005e54d3
find_pc_sect_symtab_from_partial (g
#13 0x00000000005e0143 find_pc_sect_symtab (gdb)
#14 0x00000000005dc3dd blockvector_for_pc_sect
(gdb)
#15 0x00000000005dc57d block_for_pc (gdb)
#16 0x00000000006e70bb inline_frame_sniffer (gdb)
#17 0x00000000006e52c6 frame_unwind_try_unwinder
(gdb)
#18 0x00000000006e567f frame_unwind_find_by_frame
(gdb)
#19 0x00000000006e1d2b get_prev_frame_if_no_cycle
(gdb)
#20 0x00000000006e4029 get_prev_frame_always (gdb)
#21 0x00000000006e4761 get_prev_frame (gdb)
#22 0x00000000006e4a3c unwind_to_current_frame
(gdb)
#23 0x0000000000610b71 catch_exceptions_with_msg
(gdb)
#24 0x00000000006e1e40 get_current_frame (gdb)
#25 0x0000000000603909
handle_inferior_event.part.32 (gdb)
#26 0x00000000006055ee fetch_inferior_event (gdb)
#27 0x000000000061c7f2 inferior_event_handler
(gdb)
#28 0x000000000061a7d1 process_event (gdb)
#29 0x000000000061abca gdb_do_one_event (gdb)
#30 0x000000000061ae3e start_event_loop (gdb)
#31 0x0000000000613c13 captured_command_loop (gdb)
#32 0x0000000000610d3a catch_errors (gdb)
#33 0x0000000000615526 captured_main (gdb)
#34 0x0000000000610d3a catch_errors (gdb)
#35 0x000000000061568b gdb_main (gdb)
#36 0x00000000004604a5 main (gdb)
#37 0x00007f3d3893ffe0 __libc_start_main
(libc.so.6)
#38 0x00000000004604e8 _start (gdb)
More information about the Digitalmars-d
mailing list