diff --git a/internal/runtime/z_rt.go b/internal/runtime/z_rt.go index 69fa4584..b029488e 100644 --- a/internal/runtime/z_rt.go +++ b/internal/runtime/z_rt.go @@ -49,7 +49,8 @@ func Rethrow(link *Defer) { ptr := excepKey.Get() TracePanic(*(*Eface)(ptr)) c.Free(ptr) - c.Unreachable() + // TODO(xsw): noreturn + // c.Unreachable() } else { c.Siglongjmp(link.Addr, 1) } diff --git a/ssa/eh.go b/ssa/eh.go index d883fdf2..8bbde44a 100644 --- a/ssa/eh.go +++ b/ssa/eh.go @@ -69,7 +69,7 @@ func (b Builder) Sigsetjmp(jb, savemask Expr) Expr { func (b Builder) Siglongjmp(jb, retval Expr) { fn := b.Pkg.cFunc("siglongjmp", b.Prog.tySiglongjmp()) // TODO(xsw): mark as noreturn b.Call(fn, jb, retval) - b.Unreachable() + // b.Unreachable() } // -----------------------------------------------------------------------------