• David Crawshaw's avatar
    cmd/link, runtime, plugin: versioning · 03da2690
    David Crawshaw authored
    In plugins and every program that opens a plugin, include a hash of
    every imported package.
    
    There are two versions of each hash: one local and one exported.
    As the program starts and plugins are loaded, the first exported
    symbol for each package becomes the canonical version.
    
    Any subsequent plugin's local package hash symbol has to match the
    canonical version.
    
    Fixes #17832
    
    Change-Id: I4e62c8e1729d322e14b1673bada40fa7a74ea8bc
    Reviewed-on: https://go-review.googlesource.com/33161Reviewed-by: default avatarIan Lance Taylor <iant@golang.org>
    03da2690
symtab.go 19 KB