• Russ Cox's avatar
    gc: add -p flag to catch import cycles earlier · 1e480cd1
    Russ Cox authored
    The linker would catch them if gc succeeded,
    but too often the cycle manifests as making the
    current package and the imported copy of itself
    appear as different packages, which result in
    type signature mismatches that confuse users.
    
    As a crutch, add the -p flag to say 'if you see an
    import of this package, give up early'.  Results in
    messages like (during gotest in sort):
    
    export_test.go:7: import "sort" while compiling that package (import cycle)
    export_test.go:7: import "container/heap": package depends on "sort" (import cycle)
    
    Fixes #2042.
    
    R=ken
    CC=bradfitz, dsymonds, golang-dev
    https://golang.org/cl/4972057
    1e480cd1
go.y 31.1 KB