2015-03-02 17:07:11 -08:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
2013-09-03 21:15:15 -07:00
|
|
|
# Copyright 2013 The Go Authors. All rights reserved.
|
|
|
|
|
# Use of this source code is governed by a BSD-style
|
|
|
|
|
# license that can be found in the LICENSE file.
|
|
|
|
|
|
2013-10-18 16:52:44 -04:00
|
|
|
check() {
|
|
|
|
|
file=$1
|
|
|
|
|
line=$(grep -n 'ERROR HERE' $file | sed 's/:.*//')
|
|
|
|
|
if [ "$line" = "" ]; then
|
|
|
|
|
echo 1>&2 misc/cgo/errors/test.bash: BUG: cannot find ERROR HERE in $file
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2015-11-25 12:40:43 -08:00
|
|
|
expect $file $file:$line:
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
expect() {
|
|
|
|
|
file=$1
|
|
|
|
|
error=$2
|
2013-10-18 16:52:44 -04:00
|
|
|
if go build $file >errs 2>&1; then
|
|
|
|
|
echo 1>&2 misc/cgo/errors/test.bash: BUG: expected cgo to fail but it succeeded
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
if ! test -s errs; then
|
|
|
|
|
echo 1>&2 misc/cgo/errors/test.bash: BUG: expected error output but saw none
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2015-11-25 12:40:43 -08:00
|
|
|
if ! fgrep $error errs >/dev/null 2>&1; then
|
|
|
|
|
echo 1>&2 misc/cgo/errors/test.bash: BUG: expected error output to contain \"$error\" but saw:
|
2013-10-18 16:52:44 -04:00
|
|
|
cat 1>&2 errs
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
check err1.go
|
|
|
|
|
check err2.go
|
2014-03-27 20:23:16 +00:00
|
|
|
check err3.go
|
2014-08-12 12:55:12 -07:00
|
|
|
check issue7757.go
|
2014-08-14 09:21:58 -07:00
|
|
|
check issue8442.go
|
2015-10-03 15:50:45 +00:00
|
|
|
check issue11097a.go
|
|
|
|
|
check issue11097b.go
|
2015-11-25 12:40:43 -08:00
|
|
|
expect issue13129.go C.ushort
|
2013-10-18 16:52:44 -04:00
|
|
|
|
2015-10-16 15:26:00 -07:00
|
|
|
if ! go run ptr.go; then
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
2013-09-03 21:15:15 -07:00
|
|
|
rm -rf errs _obj
|
|
|
|
|
exit 0
|