summaryrefslogtreecommitdiff
path: root/libgo/testsuite
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@gcc.gnu.org>2019-06-26 00:17:32 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2019-06-26 00:17:32 +0000
commit07525dad06aaaf4c321f386528d8357a55a67b96 (patch)
treec484bcc394439e7ac1fed45fec0fe09a59964807 /libgo/testsuite
parentd62cbf43e08c0012138f84f147a9e31fc49ab1e2 (diff)
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
Diffstat (limited to 'libgo/testsuite')
-rwxr-xr-xlibgo/testsuite/gotest7
1 files changed, 7 insertions, 0 deletions
diff --git a/libgo/testsuite/gotest b/libgo/testsuite/gotest
index c9c14652c76..5256bb6cb63 100755
--- a/libgo/testsuite/gotest
+++ b/libgo/testsuite/gotest
@@ -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