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.

Reply via email to