• Matthew Dempsky's avatar
    cmd/compile/internal/gc: handle recursive interfaces better · 07de3465
    Matthew Dempsky authored
    Previously, we handled recursive interfaces by deferring typechecking
    of interface methods, while eagerly expanding interface embeddings.
    
    This CL switches to eagerly evaluating interface methods, and
    deferring expanding interface embeddings to dowidth. This allows us to
    detect recursive interface embeddings with the same mechanism used for
    detecting recursive struct embeddings.
    
    Updates #16369.
    
    Change-Id: If4c0320058047f8a2d9b52b9a79de47eb9887f95
    Reviewed-on: https://go-review.googlesource.com/38391
    Run-TryBot: Matthew Dempsky <mdempsky@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: default avatarRobert Griesemer <gri@golang.org>
    07de3465
issue18392.go 393 Bytes