compiler: don't export function descriptors for unexported names
commit80efb81dba017af2b0005f3042907b16a7ec5916
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 13 Feb 2018 21:15:41 +0000 (13 21:15 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 13 Feb 2018 21:15:41 +0000 (13 21:15 +0000)
treef5e4bbb1924e4046c38bbf624a3a029efd08be5f
parentf88cc9dc012a82e394c7b30c7d9af1df3f6e2d53
compiler: don't export function descriptors for unexported names

    They aren't needed, and could potentially cause unlikely symbol name
    collisions.  Also, the runtime package's reference to main could cause
    the runtime package to define main.main..f, which could also be
    defined in the main package if it does something like fmt.Print(main).
    That will normally work but will fail with a multiple symbol
    definition error when using -static-libgo.

    Reviewed-on: https://go-review.googlesource.com/93656

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@257637 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/go/gofrontend/MERGE
gcc/go/gofrontend/expressions.cc