Thanks for the explanation.

My random guess was that it's the compiler version of deleting your browser
cache... If exit fails, blank as much memory as we can get our hands on. 😁

On 15 Jun 2017 6:34 pm, "Ian Lance Taylor" <i...@golang.org> wrote:

> On Thu, Jun 15, 2017 at 10:28 AM, Tyler Compton <xavi...@gmail.com> wrote:
> > Why not just panic, though? And why the infinite loop, I wonder?
>
> The runtime is a special case in many ways, and this is among the more
> special parts.  This loop exists to catch problems while testing new
> ports.  If that loop is ever reached, something has gone badly wrong:
> the exit call should have caused the program to exit.  We can't assume
> that panic is working.  We can't really assume that anything is
> working.  What we want to do is stop the program.  Since exit failed,
> it's possible that a nil dereference will succeed.  If that fails too,
> we still have to do something, so we just loop.  We can't return
> because this is the main function that started the program; there is
> nothing to return to.
>
> Ian
>
> > On Thu, Jun 15, 2017 at 9:56 AM Aldrin Leal <ald...@leal.eng.br> wrote:
> >>
> >> Force a panic in case exit fails?
> >>
> >> --
> >> -- Aldrin Leal, <ald...@leal.eng.br> / http://about.me/aldrinleal
> >>
> >> On Thu, Jun 15, 2017 at 4:54 AM, <goodwin.law...@gmail.com> wrote:
> >>>
> >>> Hey,
> >>>
> >>> Learning golang at the moment and came across this at the end of func
> >>> main() in proc.go in the golang source tree.
> >>>
> >>> exit(0)
> >>> for {
> >>> var x *int32
> >>> *x = 0
> >>> }
> >>>
> >>> Ln 198 - 202 https://golang.org/src/runtime/proc.go
> >>>
> >>> How is the for loop ever reached and what's the purpose of the infinite
> >>> loop, zeroing memory?
> >>>
> >>> Thanks,
> >>>
> >>> Goodwin
> >>>
> >>> --
> >>> 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.
> >>> For more options, visit https://groups.google.com/d/optout.
> >>
> >>
> >> --
> >> 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.
> >> For more options, visit https://groups.google.com/d/optout.
> >
> > --
> > Tyler Compton
> > Software Engineering
> >
> > --
> > 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.
> > For more options, visit https://groups.google.com/d/optout.
>

-- 
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.
For more options, visit https://groups.google.com/d/optout.

Reply via email to