libgo/testsuite: ignore symbols with a leading dot in symtogo

On AIX, a function has two symbols, a text symbol (with a leading dot)
    and a data one (without it).
    As the tests must be run only once, only the data symbol can be used to
    retrieve the final go symbol. Therefore, all symbols beginning with a dot
    are ignored by symtogo.
    
    Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/177837

From-SVN: r272666
This commit is contained in:
Ian Lance Taylor 2019-06-26 00:17:32 +00:00
parent d62cbf43e0
commit 07525dad06
2 changed files with 8 additions and 1 deletions

View File

@ -1,4 +1,4 @@
1d6578a20a9a2ee599a07f03cf7f8e7797d72b9c
d3d0f3c5bbe9d272178d55bdb907b07c188800e1
The first line of this file holds the git revision number of the last
merge done from the gofrontend repository.

View File

@ -501,6 +501,13 @@ localname() {
symtogo() {
result=""
for tp in $*; do
# Discard symbols with a leading dot.
# On AIX, this will remove function text symbols (with a leading dot).
# Therefore, only function descriptor symbols (without this leading dot)
# will be used to retrieve the go symbols, avoiding duplication.
if expr "$tp" : '^\.' >/dev/null 2>&1; then
continue
fi
s=$(echo "$tp" | sed -e 's/\.\.z2f/%/g' | sed -e 's/.*%//')
# Screen out methods (X.Y.Z).
if ! expr "$s" : '^[^.]*\.[^.]*$' >/dev/null 2>&1; then