summaryrefslogtreecommitdiff
path: root/misc/cgo/stdio
diff options
context:
space:
mode:
Diffstat (limited to 'misc/cgo/stdio')
-rw-r--r--misc/cgo/stdio/chain.go2
-rw-r--r--misc/cgo/stdio/chain.out55
-rw-r--r--misc/cgo/stdio/fib.go2
-rw-r--r--misc/cgo/stdio/fib.out91
-rw-r--r--misc/cgo/stdio/file.go5
-rw-r--r--misc/cgo/stdio/hello.go2
-rw-r--r--misc/cgo/stdio/hello.out1
-rw-r--r--misc/cgo/stdio/run.out (renamed from misc/cgo/stdio/golden.out)0
-rw-r--r--misc/cgo/stdio/stdio.go22
-rwxr-xr-xmisc/cgo/stdio/test.bash20
10 files changed, 177 insertions, 23 deletions
diff --git a/misc/cgo/stdio/chain.go b/misc/cgo/stdio/chain.go
index 1cf0b1fe5..a55cefa40 100644
--- a/misc/cgo/stdio/chain.go
+++ b/misc/cgo/stdio/chain.go
@@ -1,3 +1,5 @@
+// cmpout
+
// Copyright 2009 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.
diff --git a/misc/cgo/stdio/chain.out b/misc/cgo/stdio/chain.out
new file mode 100644
index 000000000..963cf9b66
--- /dev/null
+++ b/misc/cgo/stdio/chain.out
@@ -0,0 +1,55 @@
+0
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+0
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+0
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+0
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+0
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
diff --git a/misc/cgo/stdio/fib.go b/misc/cgo/stdio/fib.go
index 6d3ccfd52..981ffeb9a 100644
--- a/misc/cgo/stdio/fib.go
+++ b/misc/cgo/stdio/fib.go
@@ -1,3 +1,5 @@
+// cmpout
+
// Copyright 2009 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.
diff --git a/misc/cgo/stdio/fib.out b/misc/cgo/stdio/fib.out
new file mode 100644
index 000000000..17ff50335
--- /dev/null
+++ b/misc/cgo/stdio/fib.out
@@ -0,0 +1,91 @@
+0
+1
+1
+2
+3
+5
+8
+13
+21
+34
+55
+89
+144
+233
+377
+610
+987
+1597
+2584
+4181
+6765
+10946
+17711
+28657
+46368
+75025
+121393
+196418
+317811
+514229
+832040
+1346269
+2178309
+3524578
+5702887
+9227465
+14930352
+24157817
+39088169
+63245986
+102334155
+165580141
+267914296
+433494437
+701408733
+1134903170
+1836311903
+2971215073
+4807526976
+7778742049
+12586269025
+20365011074
+32951280099
+53316291173
+86267571272
+139583862445
+225851433717
+365435296162
+591286729879
+956722026041
+1548008755920
+2504730781961
+4052739537881
+6557470319842
+10610209857723
+17167680177565
+27777890035288
+44945570212853
+72723460248141
+117669030460994
+190392490709135
+308061521170129
+498454011879264
+806515533049393
+1304969544928657
+2111485077978050
+3416454622906707
+5527939700884757
+8944394323791464
+14472334024676221
+23416728348467685
+37889062373143906
+61305790721611591
+99194853094755497
+160500643816367088
+259695496911122585
+420196140727489673
+679891637638612258
+1100087778366101931
+1779979416004714189
+2880067194370816120
diff --git a/misc/cgo/stdio/file.go b/misc/cgo/stdio/file.go
index 6e7d479ad..e7bb906a5 100644
--- a/misc/cgo/stdio/file.go
+++ b/misc/cgo/stdio/file.go
@@ -1,3 +1,5 @@
+// skip
+
// Copyright 2009 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.
@@ -23,9 +25,6 @@ import "unsafe"
type File C.FILE
-var Stdout = (*File)(C.stdout)
-var Stderr = (*File)(C.stderr)
-
// Test reference to library symbol.
// Stdout and stderr are too special to be a reliable test.
//var = C.environ
diff --git a/misc/cgo/stdio/hello.go b/misc/cgo/stdio/hello.go
index 4ab3c7447..9cfeefbba 100644
--- a/misc/cgo/stdio/hello.go
+++ b/misc/cgo/stdio/hello.go
@@ -1,3 +1,5 @@
+// cmpout
+
// Copyright 2009 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.
diff --git a/misc/cgo/stdio/hello.out b/misc/cgo/stdio/hello.out
new file mode 100644
index 000000000..4b5fa6370
--- /dev/null
+++ b/misc/cgo/stdio/hello.out
@@ -0,0 +1 @@
+hello, world
diff --git a/misc/cgo/stdio/golden.out b/misc/cgo/stdio/run.out
index c0e496547..c0e496547 100644
--- a/misc/cgo/stdio/golden.out
+++ b/misc/cgo/stdio/run.out
diff --git a/misc/cgo/stdio/stdio.go b/misc/cgo/stdio/stdio.go
new file mode 100644
index 000000000..76cb8ad80
--- /dev/null
+++ b/misc/cgo/stdio/stdio.go
@@ -0,0 +1,22 @@
+// skip
+
+// Copyright 2009 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.
+
+package stdio
+
+/*
+#include <stdio.h>
+
+// on mingw, stderr and stdout are defined as &_iob[FILENO]
+// on netbsd, they are defined as &__sF[FILENO]
+// and cgo doesn't recognize them, so write a function to get them,
+// instead of depending on internals of libc implementation.
+FILE *getStdout(void) { return stdout; }
+FILE *getStderr(void) { return stderr; }
+*/
+import "C"
+
+var Stdout = (*File)(C.getStdout())
+var Stderr = (*File)(C.getStderr())
diff --git a/misc/cgo/stdio/test.bash b/misc/cgo/stdio/test.bash
deleted file mode 100755
index 21829fa31..000000000
--- a/misc/cgo/stdio/test.bash
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/sh
-# Copyright 2009 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.
-
-set -e
-go build hello.go
-go build fib.go
-go build chain.go
-
-echo '*' hello >run.out
-./hello >>run.out
-echo '*' fib >>run.out
-./fib >>run.out
-echo '*' chain >>run.out
-./chain >>run.out
-diff run.out golden.out
-
-rm -f hello fib chain
-