cmd: remove bio.BufReader and bio.BufWriter
bio.BufReader was never used.
bio.BufWriter was used to wrap an existing io.Writer, but the
bio.Writer returned would not be seekable, so replace all occurences
with bufio.Reader instead.
Change-Id: I9c6779e35c63178aa4e104c17bb5bb8b52de0359
Reviewed-on: https://go-review.googlesource.com/21722
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Dave Cheney <dave@cheney.net>
TryBot-Result: Gobot Gobot <gobot@golang.org>
diff --git a/src/cmd/asm/internal/asm/endtoend_test.go b/src/cmd/asm/internal/asm/endtoend_test.go
index 8986281..bc992a7 100644
--- a/src/cmd/asm/internal/asm/endtoend_test.go
+++ b/src/cmd/asm/internal/asm/endtoend_test.go
@@ -5,6 +5,7 @@
package asm
import (
+ "bufio"
"bytes"
"fmt"
"io/ioutil"
@@ -17,7 +18,6 @@
"testing"
"cmd/asm/internal/lex"
- "cmd/internal/bio"
"cmd/internal/obj"
)
@@ -34,7 +34,7 @@
pList := obj.Linknewplist(ctxt)
var ok bool
testOut = new(bytes.Buffer) // The assembler writes test output to this buffer.
- ctxt.Bso = bio.BufWriter(os.Stdout)
+ ctxt.Bso = bufio.NewWriter(os.Stdout)
defer ctxt.Bso.Flush()
failed := false
ctxt.DiagFunc = func(format string, args ...interface{}) {
@@ -272,7 +272,7 @@
pList := obj.Linknewplist(ctxt)
var ok bool
testOut = new(bytes.Buffer) // The assembler writes test output to this buffer.
- ctxt.Bso = bio.BufWriter(os.Stdout)
+ ctxt.Bso = bufio.NewWriter(os.Stdout)
defer ctxt.Bso.Flush()
failed := false
var errBuf bytes.Buffer
diff --git a/src/cmd/asm/main.go b/src/cmd/asm/main.go
index 75cb8f7..f010ca9 100644
--- a/src/cmd/asm/main.go
+++ b/src/cmd/asm/main.go
@@ -5,6 +5,7 @@
package main
import (
+ "bufio"
"flag"
"fmt"
"log"
@@ -32,11 +33,6 @@
flags.Parse()
- // Create object file, write header.
- fd, err := os.Create(*flags.OutputFile)
- if err != nil {
- log.Fatal(err)
- }
ctxt := obj.Linknew(architecture.LinkArch)
if *flags.PrintOut {
ctxt.Debugasm = 1
@@ -46,9 +42,14 @@
if *flags.Shared || *flags.Dynlink {
ctxt.Flag_shared = 1
}
- ctxt.Bso = bio.BufWriter(os.Stdout)
+ ctxt.Bso = bufio.NewWriter(os.Stdout)
defer ctxt.Bso.Flush()
- output := bio.BufWriter(fd)
+
+ // Create object file, write header.
+ output, err := bio.Create(*flags.OutputFile)
+ if err != nil {
+ log.Fatal(err)
+ }
fmt.Fprintf(output, "go object %s %s %s\n", obj.Getgoos(), obj.Getgoarch(), obj.Getgoversion())
fmt.Fprintf(output, "!\n")
diff --git a/src/cmd/compile/internal/gc/bexport.go b/src/cmd/compile/internal/gc/bexport.go
index bb0a34e..15e5e3a 100644
--- a/src/cmd/compile/internal/gc/bexport.go
+++ b/src/cmd/compile/internal/gc/bexport.go
@@ -90,9 +90,9 @@
package gc
import (
+ "bufio"
"bytes"
"cmd/compile/internal/big"
- "cmd/internal/bio"
"encoding/binary"
"fmt"
"sort"
@@ -124,7 +124,7 @@
const exportInlined = true // default: true
type exporter struct {
- out *bio.Writer
+ out *bufio.Writer
pkgIndex map[*Pkg]int
typIndex map[*Type]int
inlined []*Func
@@ -136,7 +136,7 @@
}
// export writes the exportlist for localpkg to out and returns the number of bytes written.
-func export(out *bio.Writer, trace bool) int {
+func export(out *bufio.Writer, trace bool) int {
p := exporter{
out: out,
pkgIndex: make(map[*Pkg]int),
diff --git a/src/cmd/compile/internal/gc/export.go b/src/cmd/compile/internal/gc/export.go
index 2f94b9c..dc7c086 100644
--- a/src/cmd/compile/internal/gc/export.go
+++ b/src/cmd/compile/internal/gc/export.go
@@ -384,7 +384,7 @@
if debugFormat {
// save a copy of the export data
var copy bytes.Buffer
- bcopy := bio.BufWriter(©)
+ bcopy := bufio.NewWriter(©)
size = export(bcopy, Debug_export != 0)
bcopy.Flush() // flushing to bytes.Buffer cannot fail
if n, err := bout.Write(copy.Bytes()); n != size || err != nil {
@@ -407,7 +407,7 @@
pkgs = savedPkgs
pkgMap = savedPkgMap
} else {
- size = export(bout, Debug_export != 0)
+ size = export(bout.Writer(), Debug_export != 0)
}
exportf("\n$$\n")
} else {
diff --git a/src/cmd/compile/internal/gc/go.go b/src/cmd/compile/internal/gc/go.go
index ec7e219..d9b28ff 100644
--- a/src/cmd/compile/internal/gc/go.go
+++ b/src/cmd/compile/internal/gc/go.go
@@ -5,6 +5,7 @@
package gc
import (
+ "bufio"
"cmd/compile/internal/ssa"
"cmd/internal/bio"
"cmd/internal/obj"
@@ -288,7 +289,7 @@
var writearchive int
-var bstdout *bio.Writer
+var bstdout *bufio.Writer
var Nacl bool
diff --git a/src/cmd/compile/internal/gc/main.go b/src/cmd/compile/internal/gc/main.go
index 03143f5..26acf88 100644
--- a/src/cmd/compile/internal/gc/main.go
+++ b/src/cmd/compile/internal/gc/main.go
@@ -9,7 +9,6 @@
import (
"bufio"
"cmd/compile/internal/ssa"
- "cmd/internal/bio"
"cmd/internal/obj"
"cmd/internal/sys"
"flag"
@@ -104,7 +103,7 @@
Ctxt = obj.Linknew(Thearch.LinkArch)
Ctxt.DiagFunc = Yyerror
- bstdout = bio.BufWriter(os.Stdout)
+ bstdout = bufio.NewWriter(os.Stdout)
Ctxt.Bso = bstdout
localpkg = mkpkg("")
diff --git a/src/cmd/internal/bio/buf.go b/src/cmd/internal/bio/buf.go
index 0bd4658..983ce46 100644
--- a/src/cmd/internal/bio/buf.go
+++ b/src/cmd/internal/bio/buf.go
@@ -51,18 +51,6 @@
return &Reader{f: f, r: bufio.NewReader(f)}, nil
}
-// BufWriter returns a Writer on top of w.
-// TODO(dfc) remove this method and replace caller with bufio.Writer.
-func BufWriter(w io.Writer) *Writer {
- return &Writer{w: bufio.NewWriter(w)}
-}
-
-// BufWriter returns a Reader on top of r.
-// TODO(dfc) remove this method and replace caller with bufio.Reader.
-func BufReader(r io.Reader) *Reader {
- return &Reader{r: bufio.NewReader(r)}
-}
-
func (w *Writer) Write(p []byte) (int, error) {
return w.w.Write(p)
}
diff --git a/src/cmd/internal/obj/link.go b/src/cmd/internal/obj/link.go
index c48c3d8..62175f9 100644
--- a/src/cmd/internal/obj/link.go
+++ b/src/cmd/internal/obj/link.go
@@ -31,7 +31,7 @@
package obj
import (
- "cmd/internal/bio"
+ "bufio"
"cmd/internal/sys"
)
@@ -629,7 +629,7 @@
Flag_shared int32
Flag_dynlink bool
Flag_optimize bool
- Bso *bio.Writer
+ Bso *bufio.Writer
Pathname string
Goroot string
Goroot_final string
diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go
index e35306d..01dca9f 100644
--- a/src/cmd/link/internal/ld/lib.go
+++ b/src/cmd/link/internal/ld/lib.go
@@ -241,7 +241,7 @@
var (
headstring string
// buffered output
- Bso *bio.Writer
+ Bso *bufio.Writer
)
// TODO(dfc) outBuf duplicates bio.Writer
diff --git a/src/cmd/link/internal/ld/link.go b/src/cmd/link/internal/ld/link.go
index cbcc979..52b52f1 100644
--- a/src/cmd/link/internal/ld/link.go
+++ b/src/cmd/link/internal/ld/link.go
@@ -31,7 +31,7 @@
package ld
import (
- "cmd/internal/bio"
+ "bufio"
"cmd/internal/sys"
"debug/elf"
"fmt"
@@ -165,10 +165,9 @@
Headtype int
Arch *sys.Arch
Debugvlog int32
-
- Bso *bio.Writer
- Windows int32
- Goroot string
+ Bso *bufio.Writer
+ Windows int32
+ Goroot string
// Symbol lookup based on name and indexed by version.
Hash []map[string]*LSym
diff --git a/src/cmd/link/internal/ld/pobj.go b/src/cmd/link/internal/ld/pobj.go
index 50066d3..f4fb4d4 100644
--- a/src/cmd/link/internal/ld/pobj.go
+++ b/src/cmd/link/internal/ld/pobj.go
@@ -31,7 +31,7 @@
package ld
import (
- "cmd/internal/bio"
+ "bufio"
"cmd/internal/obj"
"cmd/internal/sys"
"flag"
@@ -46,7 +46,7 @@
)
func Ldmain() {
- Bso = bio.BufWriter(os.Stdout)
+ Bso = bufio.NewWriter(os.Stdout)
Ctxt = linknew(SysArch)
Ctxt.Diag = Diag