delete all uses of panicln by rewriting them using panic or,
in the tests, println+panic.
gofmt some tests too.

R=rsc
CC=golang-dev
https://golang.org/cl/741041
diff --git a/src/cmd/goyacc/goyacc.go b/src/cmd/goyacc/goyacc.go
index 4d9a515..31ab32c 100644
--- a/src/cmd/goyacc/goyacc.go
+++ b/src/cmd/goyacc/goyacc.go
@@ -3090,7 +3090,7 @@
 }
 
 func write(f *bufio.Writer, b []byte, n int) int {
-	println("write")
+	panic("write")
 	return 0
 }
 
diff --git a/src/pkg/crypto/block/cfb.go b/src/pkg/crypto/block/cfb.go
index 82b289a..177ae93 100644
--- a/src/pkg/crypto/block/cfb.go
+++ b/src/pkg/crypto/block/cfb.go
@@ -26,7 +26,7 @@
 
 func newCFB(c Cipher, s int, iv []byte) *cfbCipher {
 	if s == 0 || s%8 != 0 {
-		panicln("crypto/block: invalid CFB mode", s)
+		panic("crypto/block: invalid CFB mode")
 	}
 	b := c.BlockSize()
 	x := new(cfbCipher)
diff --git a/src/pkg/crypto/block/eax.go b/src/pkg/crypto/block/eax.go
index fcd5fe2..cc36627 100644
--- a/src/pkg/crypto/block/eax.go
+++ b/src/pkg/crypto/block/eax.go
@@ -36,7 +36,7 @@
 func setupEAX(c Cipher, iv, hdr []byte, tagBytes int) (ctrIV, tag []byte, cmac hash.Hash) {
 	n := len(iv)
 	if n != c.BlockSize() {
-		panicln("crypto/block: EAX: iv length", n, "!=", c.BlockSize())
+		panic(fmt.Sprintln("crypto/block: EAX: iv length", n, "!=", c.BlockSize()))
 	}
 	buf := make([]byte, n) // zeroed
 
diff --git a/src/pkg/crypto/block/ecb_test.go b/src/pkg/crypto/block/ecb_test.go
index 0d7c403..3767e63 100644
--- a/src/pkg/crypto/block/ecb_test.go
+++ b/src/pkg/crypto/block/ecb_test.go
@@ -24,10 +24,10 @@
 
 func (c *IncCipher) Encrypt(src, dst []byte) {
 	if !c.encrypting {
-		panicln("encrypt: not encrypting")
+		panic("encrypt: not encrypting")
 	}
 	if len(src) != c.blockSize || len(dst) != c.blockSize {
-		panicln("encrypt: wrong block size", c.blockSize, len(src), len(dst))
+		panic(fmt.Sprintln("encrypt: wrong block size", c.blockSize, len(src), len(dst)))
 	}
 	c.delta++
 	for i, b := range src {
@@ -37,10 +37,10 @@
 
 func (c *IncCipher) Decrypt(src, dst []byte) {
 	if c.encrypting {
-		panicln("decrypt: not decrypting")
+		panic("decrypt: not decrypting")
 	}
 	if len(src) != c.blockSize || len(dst) != c.blockSize {
-		panicln("decrypt: wrong block size", c.blockSize, len(src), len(dst))
+		panic(fmt.Sprintln("decrypt: wrong block size ", c.blockSize, " ", len(src), " ", len(dst)))
 	}
 	c.delta--
 	for i, b := range src {
diff --git a/src/pkg/crypto/block/ofb.go b/src/pkg/crypto/block/ofb.go
index bffdc53..0cd5e73 100644
--- a/src/pkg/crypto/block/ofb.go
+++ b/src/pkg/crypto/block/ofb.go
@@ -13,6 +13,7 @@
 package block
 
 import (
+	"fmt"
 	"io"
 )
 
@@ -26,7 +27,7 @@
 	x.c = c
 	n := len(iv)
 	if n != c.BlockSize() {
-		panicln("crypto/block: newOFBStream: invalid iv size", n, "!=", c.BlockSize())
+		panic(fmt.Sprintln("crypto/block: newOFBStream: invalid iv size", n, "!=", c.BlockSize()))
 	}
 	x.iv = copy(iv)
 	return x
diff --git a/src/pkg/crypto/md4/md4.go b/src/pkg/crypto/md4/md4.go
index 793cb16..54d1ba3 100644
--- a/src/pkg/crypto/md4/md4.go
+++ b/src/pkg/crypto/md4/md4.go
@@ -99,7 +99,7 @@
 	d.Write(tmp[0:8])
 
 	if d.nx != 0 {
-		panicln("oops")
+		panic("d.nx != 0")
 	}
 
 	p := make([]byte, 16)
diff --git a/src/pkg/crypto/md5/md5.go b/src/pkg/crypto/md5/md5.go
index 90774af..f61273c 100644
--- a/src/pkg/crypto/md5/md5.go
+++ b/src/pkg/crypto/md5/md5.go
@@ -99,7 +99,7 @@
 	d.Write(tmp[0:8])
 
 	if d.nx != 0 {
-		panicln("oops")
+		panic("d.nx != 0")
 	}
 
 	p := make([]byte, 16)
diff --git a/src/pkg/crypto/ripemd160/ripemd160.go b/src/pkg/crypto/ripemd160/ripemd160.go
index 9eb8340..d485910 100644
--- a/src/pkg/crypto/ripemd160/ripemd160.go
+++ b/src/pkg/crypto/ripemd160/ripemd160.go
@@ -103,7 +103,7 @@
 	d.Write(tmp[0:8])
 
 	if d.nx != 0 {
-		panicln("oops")
+		panic("d.nx != 0")
 	}
 
 	p := make([]byte, 20)
diff --git a/src/pkg/crypto/sha1/sha1.go b/src/pkg/crypto/sha1/sha1.go
index 98f0a06..cd7d8fd 100644
--- a/src/pkg/crypto/sha1/sha1.go
+++ b/src/pkg/crypto/sha1/sha1.go
@@ -101,7 +101,7 @@
 	d.Write(tmp[0:8])
 
 	if d.nx != 0 {
-		panicln("oops")
+		panic("d.nx != 0")
 	}
 
 	p := make([]byte, 20)
diff --git a/src/pkg/crypto/sha256/sha256.go b/src/pkg/crypto/sha256/sha256.go
index 4023ad9..b95fd8e 100644
--- a/src/pkg/crypto/sha256/sha256.go
+++ b/src/pkg/crypto/sha256/sha256.go
@@ -143,7 +143,7 @@
 	d.Write(tmp[0:8])
 
 	if d.nx != 0 {
-		panicln("oops")
+		panic("d.nx != 0")
 	}
 
 	p := make([]byte, 32)
diff --git a/src/pkg/crypto/sha512/sha512.go b/src/pkg/crypto/sha512/sha512.go
index 90cc21d..9e83148 100644
--- a/src/pkg/crypto/sha512/sha512.go
+++ b/src/pkg/crypto/sha512/sha512.go
@@ -143,7 +143,7 @@
 	d.Write(tmp[0:16])
 
 	if d.nx != 0 {
-		panicln("oops")
+		panic("d.nx != 0")
 	}
 
 	p := make([]byte, 64)
diff --git a/src/pkg/exp/eval/abort.go b/src/pkg/exp/eval/abort.go
index bfa89fa..22e17ce 100644
--- a/src/pkg/exp/eval/abort.go
+++ b/src/pkg/exp/eval/abort.go
@@ -14,7 +14,7 @@
 // causing the innermost Try to return err.
 func (t *Thread) Abort(err os.Error) {
 	if t.abort == nil {
-		panicln("abort:", err.String())
+		panic("abort: " + err.String())
 	}
 	t.abort <- err
 	runtime.Goexit()
diff --git a/src/pkg/exp/eval/expr.go b/src/pkg/exp/eval/expr.go
index dcd02ab..5547aee 100644
--- a/src/pkg/exp/eval/expr.go
+++ b/src/pkg/exp/eval/expr.go
@@ -6,6 +6,7 @@
 
 import (
 	"bignum"
+	"fmt"
 	"go/ast"
 	"go/token"
 	"log"
@@ -340,7 +341,7 @@
 		temp := b.DefineTemp(a.rmt)
 		tempIdx := temp.Index
 		if tempIdx < 0 {
-			panicln("tempidx", tempIdx)
+			panic(fmt.Sprintln("tempidx", tempIdx))
 		}
 		if a.isMapUnpack {
 			rf := a.rs[0].evalMapValue
@@ -1374,12 +1375,12 @@
 		expr.eval = func(*Thread) Value { return t.Zero() }
 		return expr
 
-	case panicType, paniclnType, printType, printlnType:
+	case panicType, printType, printlnType:
 		evals := make([]func(*Thread) interface{}, len(as))
 		for i, x := range as {
 			evals[i] = x.asInterface()
 		}
-		spaces := ft == paniclnType || ft == printlnType
+		spaces := ft == printlnType
 		newline := ft != printType
 		printer := func(t *Thread) {
 			for i, eval := range evals {
@@ -1413,7 +1414,7 @@
 		}
 		expr := a.newExpr(EmptyType, "print")
 		expr.exec = printer
-		if ft == panicType || ft == paniclnType {
+		if ft == panicType {
 			expr.exec = func(t *Thread) {
 				printer(t)
 				t.Abort(os.NewError("panic"))
diff --git a/src/pkg/exp/eval/type.go b/src/pkg/exp/eval/type.go
index 55a0960..2b2a632 100644
--- a/src/pkg/exp/eval/type.go
+++ b/src/pkg/exp/eval/type.go
@@ -702,7 +702,6 @@
 	makeType    = &FuncType{builtin: "make"}
 	newType     = &FuncType{builtin: "new"}
 	panicType   = &FuncType{builtin: "panic"}
-	paniclnType = &FuncType{builtin: "panicln"}
 	printType   = &FuncType{builtin: "print"}
 	printlnType = &FuncType{builtin: "println"}
 )
@@ -1237,7 +1236,6 @@
 	universe.DefineConst("make", universePos, makeType, nil)
 	universe.DefineConst("new", universePos, newType, nil)
 	universe.DefineConst("panic", universePos, panicType, nil)
-	universe.DefineConst("panicln", universePos, paniclnType, nil)
 	universe.DefineConst("print", universePos, printType, nil)
 	universe.DefineConst("println", universePos, printlnType, nil)
 }
diff --git a/src/pkg/gob/encode.go b/src/pkg/gob/encode.go
index cfd4a73..195d6c6 100644
--- a/src/pkg/gob/encode.go
+++ b/src/pkg/gob/encode.go
@@ -399,7 +399,7 @@
 func compileEnc(rt reflect.Type) (*encEngine, os.Error) {
 	srt, ok := rt.(*reflect.StructType)
 	if !ok {
-		panicln("can't happen: non-struct")
+		panic("can't happen: non-struct")
 	}
 	engine := new(encEngine)
 	engine.instr = make([]encInstr, srt.NumField()+1) // +1 for terminator
diff --git a/src/pkg/gob/type.go b/src/pkg/gob/type.go
index ace80d6..f08f2a0 100644
--- a/src/pkg/gob/type.go
+++ b/src/pkg/gob/type.go
@@ -114,7 +114,7 @@
 	// Move the id space upwards to allow for growth in the predefined world
 	// without breaking existing files.
 	if nextId > firstUserId {
-		panicln("nextId too large:", nextId)
+		panic(fmt.Sprintln("nextId too large:", nextId))
 	}
 	nextId = firstUserId
 }
@@ -303,7 +303,7 @@
 
 func checkId(want, got typeId) {
 	if want != got {
-		panicln("bootstrap type wrong id:", got.Name(), got, "not", want)
+		panic("bootstrap type wrong id: " + got.Name() + " " + got.string() + " not " + want.string())
 	}
 }
 
@@ -312,7 +312,7 @@
 	rt := reflect.Typeof(e)
 	_, present := types[rt]
 	if present {
-		panicln("bootstrap type already present:", name)
+		panic("bootstrap type already present: " + name)
 	}
 	typ := &commonType{name: name}
 	types[rt] = typ
@@ -356,7 +356,7 @@
 // typeLock must be held.
 func getTypeInfo(rt reflect.Type) (*typeInfo, os.Error) {
 	if _, ok := rt.(*reflect.PtrType); ok {
-		panicln("pointer type in getTypeInfo:", rt.String())
+		panic("pointer type in getTypeInfo: " + rt.String())
 	}
 	info, ok := typeInfoMap[rt]
 	if !ok {
@@ -388,7 +388,7 @@
 func mustGetTypeInfo(rt reflect.Type) *typeInfo {
 	t, err := getTypeInfo(rt)
 	if err != nil {
-		panicln("getTypeInfo:", err.String())
+		panic("getTypeInfo: " + err.String())
 	}
 	return t
 }
diff --git a/src/pkg/gob/type_test.go b/src/pkg/gob/type_test.go
index 2c3d044..3d4871f 100644
--- a/src/pkg/gob/type_test.go
+++ b/src/pkg/gob/type_test.go
@@ -28,7 +28,7 @@
 	defer typeLock.Unlock()
 	t, err := getType(name, rt)
 	if err != nil {
-		panicln("getTypeUnlocked:", err.String())
+		panic("getTypeUnlocked: " + err.String())
 	}
 	return t
 }
diff --git a/src/pkg/http/server.go b/src/pkg/http/server.go
index 39b498a..dff0d17 100644
--- a/src/pkg/http/server.go
+++ b/src/pkg/http/server.go
@@ -511,7 +511,7 @@
 // Handle registers the handler for the given pattern.
 func (mux *ServeMux) Handle(pattern string, handler Handler) {
 	if pattern == "" || pattern[0] != '/' {
-		panicln("http: invalid pattern", pattern)
+		panic("http: invalid pattern " + pattern)
 	}
 
 	mux.m[pattern] = handler
diff --git a/src/pkg/net/fd.go b/src/pkg/net/fd.go
index df5a39d..5619b9e 100644
--- a/src/pkg/net/fd.go
+++ b/src/pkg/net/fd.go
@@ -128,7 +128,7 @@
 		return
 	}
 	if err := s.poll.AddFD(intfd, mode, false); err != nil {
-		panicln("pollServer AddFD ", intfd, ": ", err.String(), "\n")
+		panic("pollServer AddFD " + err.String())
 		return
 	}
 
diff --git a/src/pkg/reflect/tostring_test.go b/src/pkg/reflect/tostring_test.go
index 190385a..cced058 100644
--- a/src/pkg/reflect/tostring_test.go
+++ b/src/pkg/reflect/tostring_test.go
@@ -111,7 +111,7 @@
 		v := val
 		return typ.String() + "(" + strconv.Itoa64(int64(v.Get())) + ")"
 	default:
-		panicln("valueToString: can't print type ", typ.String())
+		panic("valueToString: can't print type " + typ.String())
 	}
 	return "valueToString: can't happen"
 }
diff --git a/src/pkg/reflect/type.go b/src/pkg/reflect/type.go
index 2abb933..b82f1e2 100644
--- a/src/pkg/reflect/type.go
+++ b/src/pkg/reflect/type.go
@@ -649,7 +649,7 @@
 	case *runtime.StructType:
 		return (*StructType)(unsafe.Pointer(v))
 	}
-	panicln("toType", i)
+	panic("toType")
 }
 
 // ArrayOrSliceType is the common interface implemented
diff --git a/src/pkg/reflect/value.go b/src/pkg/reflect/value.go
index 4134da6..be786e9 100644
--- a/src/pkg/reflect/value.go
+++ b/src/pkg/reflect/value.go
@@ -503,7 +503,7 @@
 
 func typesMustMatch(t1, t2 Type) {
 	if t1 != t2 {
-		panicln("type mismatch:", t1.String(), "!=", t2.String())
+		panic("type mismatch: " + t1.String() + " != " + t2.String())
 	}
 }
 
@@ -612,7 +612,7 @@
 func (v *SliceValue) SetLen(n int) {
 	s := v.slice()
 	if n < 0 || n > int(s.Cap) {
-		panicln("SetLen", n, "with capacity", s.Cap)
+		panic("reflect: slice length out of range in SetLen")
 	}
 	s.Len = n
 }
@@ -657,7 +657,7 @@
 	typ := v.typ.(*SliceType).Elem()
 	n := v.Len()
 	if i < 0 || i >= n {
-		panicln("index", i, "in array of length", n)
+		panic("reflect: slice index out of range")
 	}
 	p := addr(uintptr(v.addr()) + uintptr(i)*typ.Size())
 	return newValue(typ, p, v.canSet)
@@ -1346,7 +1346,7 @@
 	case *UnsafePointerType:
 		return (*UnsafePointerValue)(v)
 	}
-	panicln("newValue", typ.String())
+	panic("newValue" + typ.String())
 }
 
 // MakeZero returns a zero Value for the specified Type.
diff --git a/src/pkg/regexp/regexp.go b/src/pkg/regexp/regexp.go
index ecef271..bf9a4bb 100644
--- a/src/pkg/regexp/regexp.go
+++ b/src/pkg/regexp/regexp.go
@@ -673,7 +673,7 @@
 func MustCompile(str string) *Regexp {
 	regexp, error := Compile(str)
 	if error != nil {
-		panicln(`regexp: compiling "`, str, `": `, error.String())
+		panic(`regexp: compiling "` + str + `": ` + error.String())
 	}
 	return regexp
 }
diff --git a/src/pkg/rpc/client.go b/src/pkg/rpc/client.go
index 153c56d..cee82ad 100644
--- a/src/pkg/rpc/client.go
+++ b/src/pkg/rpc/client.go
@@ -61,7 +61,7 @@
 	client.enc.Encode(request)
 	err := client.enc.Encode(c.Args)
 	if err != nil {
-		panicln("rpc: client encode error:", err.String())
+		panic("rpc: client encode error: " + err.String())
 	}
 	client.sending.Unlock()
 }
diff --git a/src/pkg/rpc/server_test.go b/src/pkg/rpc/server_test.go
index 98c0ead..3196891 100644
--- a/src/pkg/rpc/server_test.go
+++ b/src/pkg/rpc/server_test.go
@@ -49,7 +49,7 @@
 }
 
 func (t *Arith) Error(args *Args, reply *Reply) os.Error {
-	panicln("ERROR")
+	panic("ERROR")
 }
 
 func startServer() {
diff --git a/src/pkg/strconv/fp_test.go b/src/pkg/strconv/fp_test.go
index 2f0172a..62fcfc6 100644
--- a/src/pkg/strconv/fp_test.go
+++ b/src/pkg/strconv/fp_test.go
@@ -96,7 +96,7 @@
 func TestFp(t *testing.T) {
 	f, err := os.Open("testfp.txt", os.O_RDONLY, 0)
 	if err != nil {
-		panicln("testfp: open testfp.txt:", err.String())
+		t.Fatal("testfp: open testfp.txt:", err.String())
 	}
 	defer f.Close()
 
@@ -109,7 +109,7 @@
 			break
 		}
 		if err2 != nil {
-			panicln("testfp: read testfp.txt:", err2.String())
+			t.Fatal("testfp: read testfp.txt: " + err2.String())
 		}
 		line = line[0 : len(line)-1]
 		lineno++
diff --git a/src/pkg/tabwriter/tabwriter_test.go b/src/pkg/tabwriter/tabwriter_test.go
index 076ffdd..1cad625 100644
--- a/src/pkg/tabwriter/tabwriter_test.go
+++ b/src/pkg/tabwriter/tabwriter_test.go
@@ -31,7 +31,7 @@
 			b.a[n+i] = buf[i]
 		}
 	} else {
-		panicln("buffer.Write: buffer too small", n, m, cap(b.a))
+		panic("buffer.Write: buffer too small")
 	}
 	return len(buf), nil
 }
diff --git a/src/pkg/testing/regexp.go b/src/pkg/testing/regexp.go
index 6584d47..e2bde0b 100644
--- a/src/pkg/testing/regexp.go
+++ b/src/pkg/testing/regexp.go
@@ -624,7 +624,7 @@
 func MustCompile(str string) *Regexp {
 	regexp, error := CompileRegexp(str)
 	if error != "" {
-		panicln(`regexp: compiling "`, str, `": `, error)
+		panic(`regexp: compiling "` + str + `": ` + error)
 	}
 	return regexp
 }