On Mon, Dec 26, 2022 at 10:56 AM Nikhilesh Susarla <nikhilesh1...@gmail.com> wrote: > > So the SigPanic() captures the "_SIGSEGV" and then panics the whole program > right?
It depends on precisely what you mean by that. SIGSEGV is marked with the SigPanic flag in runtime/sigtab_linux_generic.go or whatever is the equivalent for your GOOS. The SIGSEGV is turned into a runtime panic, just as though the user code called panic(someValue). If nothing recovers the panic, then the program will crash just as for any unrecovered panic. Ian > On Monday, 26 December 2022 at 23:49:12 UTC+5:30 Ian Lance Taylor wrote: >> >> On Mon, Dec 26, 2022 at 9:49 AM Nikhilesh Susarla >> <nikhil...@gmail.com> wrote: >> > >> > https://play.golang.com/p/xpuit5lh9hh >> > >> > An array out of bounds throws panic at runtime. >> > >> > How does the internal runtime know that we are accessing the memory which >> > we are not allocated? Interested in knowing more depth of the internals. >> > >> > This Link talks about the compile time on how the compiler avoids the >> > bound checks. >> > >> > But during runtime I am more interested to know what happens when we >> > access the invalid memory local through indexing. >> > >> > Does the OS return a signal and go runtime converts that into a panic? Any >> > links or more reading links are appreciated. >> >> Yes, on Unix systems, that is what happens. See >> runtime/signal_unix.go, the function sighandler, the case where >> SigPanic is set for the signal. >> >> Ian > > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to golang-nuts+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/7a176761-0f85-417d-8df1-a743c48dfd44n%40googlegroups.com. -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CAOyqgcWvT8ELjagCneq%2B92x_KZXzSCSgEBo8yLT7MJn3pa4pTw%40mail.gmail.com.