Notifications
Sign Up Sign In
Q&A

Generate SIGSEGV without undefined behaviour.

+3
−0

In order to test that coredumps are generated and that they contain useful information which can be retreived with gdb I need to generate a SIGSEGV. Or anything else which causes a coredump.

The code I am using is:

int *p = nullptr;
*p = 0;

Which works fine but is undefined behaviour. It might as well not generate a SIGSEGV at all.

Is there a portable way to raise that signal? And if not, is there an implementation specific documented way to do so with gcc?

Why should this post be closed?

0 comments

1 answer

+5
−0

SIGSEGV is defined in the C header signal.h. To generate the signal, it should be sufficient to just do raise(SIGSEGV);. As far as I know, this is well-defined behavior.

1 comment

This has worked fine. Thanks. ‭Estela‭ 22 days ago

Sign up to answer this question »