compiler: deref receiver types in mangled names
commit15e069d11959c684a9ecce7c21e2db8c6527edec
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 25 Jan 2018 23:10:35 +0000 (25 23:10 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 25 Jan 2018 23:10:35 +0000 (25 23:10 +0000)
treee7d8639d02f527aa3613c5443f0d7df1e358d02e
parent15c7b27af70cd57c55c68274f3be79b332b26325
compiler: deref receiver types in mangled names

    This was the original intent, as reflected in the long comment at the
    start of names.cc, but I forgot to implement it.

    Also, remove a leading ".0" from the final name.  That could occur for
    a method whose receiver type starts with 'u', as in that case we
    prepend a space to the mangled name, to avoid confusion with the
    Unicode mangling, and the space turns into ".0".

    Also, if the Unicode encoding would cause the final to start with
    "..u" or "..U", add a leading underscore.

    Patch gotest to not get fooled by some names.

    The result of these changes is that all symbols start with a letter or
    an underscore.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@257068 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/go/gofrontend/MERGE
gcc/go/gofrontend/go-encode-id.cc
gcc/go/gofrontend/names.cc
libgo/go/runtime/pprof/pprof_test.go
libgo/testsuite/gotest