Commit ca6a0fee authored by Russ Cox's avatar Russ Cox

more "declared and not used".

the last round omitted := range and only
checked 1 out of N vars in a multi-var :=

R=r
OCL=34624
CL=34638
parent 1a319890
......@@ -147,7 +147,7 @@ func TestPartialRead(t *testing.T) {
t.Fatalf("Didn't get first file: %v", err);
}
buf := make([]byte, 4);
if n, err := io.ReadFull(tr, buf); err != nil {
if _, err := io.ReadFull(tr, buf); err != nil {
t.Fatalf("Unexpected error: %v", err);
}
if expected := strings.Bytes("Kilt"); !bytes.Equal(buf, expected) {
......@@ -160,7 +160,7 @@ func TestPartialRead(t *testing.T) {
t.Fatalf("Didn't get second file: %v", err);
}
buf = make([]byte, 6);
if n, err := io.ReadFull(tr, buf); err != nil {
if _, err := io.ReadFull(tr, buf); err != nil {
t.Fatalf("Unexpected error: %v", err);
}
if expected := strings.Bytes("Google"); !bytes.Equal(buf, expected) {
......
......@@ -64,7 +64,7 @@ var writerTests = []*writerTest{
func bytestr(offset int, b []byte) string {
const rowLen = 32;
s := fmt.Sprintf("%04x ", offset);
for i, ch := range b {
for _, ch := range b {
switch {
case '0' <= ch && ch <= '9', 'A' <= ch && ch <= 'Z', 'a' <= ch && ch <= 'z':
s += fmt.Sprintf(" %c", ch);
......@@ -114,7 +114,7 @@ testLoop:
t.Errorf("test %d, entry %d: Failed writing header: %v", i, j, err);
continue testLoop
}
if n, err := io.WriteString(tw, entry.contents); err != nil {
if _, err := io.WriteString(tw, entry.contents); err != nil {
t.Errorf("test %d, entry %d: Failed writing contents: %v", i, j, err);
continue testLoop
}
......
......@@ -158,7 +158,7 @@ func TestDecodeCorrupt(t *testing.T) {
for _, e := range examples {
dbuf := make([]byte, StdEncoding.DecodedLen(len(e.e)));
count, err := StdEncoding.Decode(strings.Bytes(e.e), dbuf);
_, err := StdEncoding.Decode(strings.Bytes(e.e), dbuf);
switch err := err.(type) {
case CorruptInputError:
testEqual(t, "Corruption in %q at offset %v, want %v", e.e, int(err), e.p);
......
......@@ -591,7 +591,7 @@ func divmod(x, y []digit2) ([]digit2, []digit2) {
// If y == 0, a division-by-zero run-time error occurs.
//
func (x Natural) Div(y Natural) Natural {
q, r := divmod(unpack(x), unpack(y));
q, _ := divmod(unpack(x), unpack(y));
return pack(q);
}
......@@ -601,7 +601,7 @@ func (x Natural) Div(y Natural) Natural {
// If y == 0, a division-by-zero run-time error occurs.
//
func (x Natural) Mod(y Natural) Natural {
q, r := divmod(unpack(x), unpack(y));
_, r := divmod(unpack(x), unpack(y));
return pack(r);
}
......
......@@ -152,7 +152,7 @@ func TestNatConv(t *testing.T) {
test_msg = "NatConvG";
x := Nat(100);
y, b, _ := NatFromString(fmt.Sprintf("%b", &x), 2);
y, _, _ := NatFromString(fmt.Sprintf("%b", &x), 2);
nat_eq(100, y, x);
}
......
......@@ -156,7 +156,7 @@ func TestReader(t *testing.T) {
bufreader := bufreaders[j];
bufsize := bufsizes[k];
read := readmaker.fn(bytes.NewBuffer(textbytes));
buf, e := NewReaderSize(read, bufsize);
buf, _ := NewReaderSize(read, bufsize);
s := bufreader.fn(buf);
if s != text {
t.Errorf("reader=%s fn=%s bufsize=%d want=%q got=%q",
......@@ -193,7 +193,7 @@ func readRuneSegments(t *testing.T, segments []string) {
want := strings.Join(segments, "");
r := NewReader(&StringReader{data: segments});
for {
rune, size, err := r.ReadRune();
rune, _, err := r.ReadRune();
if err != nil {
if err != os.EOF {
return;
......@@ -293,9 +293,9 @@ var errorWriterTests = []errorWriterTest {
}
func TestWriteErrors(t *testing.T) {
for i, w := range errorWriterTests {
for _, w := range errorWriterTests {
buf := NewWriter(w);
n, e := buf.Write(strings.Bytes("hello world"));
_, e := buf.Write(strings.Bytes("hello world"));
if e != nil {
t.Errorf("Write hello to %v: %v", w, e);
continue;
......
......@@ -164,7 +164,7 @@ func TestMixedReadsAndWrites(t *testing.T) {
rlen := rand.Intn(len(data));
fub := make([]byte, rlen);
n, err := buf.Read(fub);
n, _ := buf.Read(fub);
s = s[n : len(s)];
}
empty(t, "TestMixedReadsAndWrites (2)", &buf, s, make([]byte, buf.Len()));
......
......@@ -190,8 +190,8 @@ func Map(mapping func(rune int) int, s []byte) []byte {
maxbytes := len(s); // length of b
nbytes := 0; // number of bytes encoded in b
b := make([]byte, maxbytes);
for wid, i := 0, 0; i < len(s); i += wid {
wid = 1;
for i := 0; i < len(s); {
wid := 1;
rune := int(s[i]);
if rune < utf8.RuneSelf {
rune = mapping(rune);
......@@ -209,6 +209,7 @@ func Map(mapping func(rune int) int, s []byte) []byte {
b = nb;
}
nbytes += utf8.EncodeRune(rune, b[nbytes:maxbytes]);
i += wid;
}
return b[0:nbytes];
}
......@@ -232,8 +233,8 @@ func Title(s []byte) []byte {
// removed, as defined by Unicode.
func TrimSpace(s []byte) []byte {
start, end := 0, len(s);
for wid := 0; start < end; start += wid {
wid = 1;
for start < end {
wid := 1;
rune := int(s[start]);
if rune >= utf8.RuneSelf {
rune, wid = utf8.DecodeRune(s[start:end])
......@@ -241,9 +242,10 @@ func TrimSpace(s []byte) []byte {
if !unicode.IsSpace(rune) {
break;
}
start += wid;
}
for wid := 0; start < end; end -= wid {
wid = 1;
for start < end {
wid := 1;
rune := int(s[end-1]);
if rune >= utf8.RuneSelf {
// Back up carefully looking for beginning of rune. Mustn't pass start.
......@@ -257,6 +259,7 @@ func TrimSpace(s []byte) []byte {
if !unicode.IsSpace(rune) {
break;
}
end -= wid;
}
return s[start:end];
}
......
......@@ -216,7 +216,7 @@ func Bytes(s string) []byte {
// Execute f on each test case. funcName should be the name of f; it's used
// in failure reports.
func runStringTests(t *testing.T, f func([]byte) []byte, funcName string, testCases []StringTest) {
for i, tc := range testCases {
for _, tc := range testCases {
actual := string(f(Bytes(tc.in)));
if actual != tc.out {
t.Errorf("%s(%q) = %q; want %q", funcName, tc.in, actual, tc.out);
......@@ -275,7 +275,7 @@ var addtests = []AddTest {
}
func TestAdd(t *testing.T) {
for i, test := range addtests {
for _, test := range addtests {
b := make([]byte, len(test.s), test.cap);
for i := 0; i < len(test.s); i++ {
b[i] = test.s[i]
......
......@@ -121,7 +121,7 @@ func (h *huffmanDecoder) init(bits []int) bool {
// compute min and max length.
var count [maxCodeLen+1]int;
var min, max int;
for i, n := range bits {
for _, n := range bits {
if n == 0 {
continue;
}
......
......@@ -116,7 +116,7 @@ func (z *Inflater) read2() (uint32, os.Error) {
}
func (z *Inflater) readHeader(save bool) os.Error {
n, err := io.ReadFull(z.r, z.buf[0:10]);
_, err := io.ReadFull(z.r, z.buf[0:10]);
if err != nil {
return err;
}
......
......@@ -282,7 +282,7 @@ var gzipTests = []gzipTest {
func TestInflater(t *testing.T) {
b := new(bytes.Buffer);
for i, tt := range gzipTests {
for _, tt := range gzipTests {
in := bytes.NewBuffer(tt.gzip);
gzip, err := NewInflater(in);
if err != nil {
......
......@@ -39,7 +39,7 @@ func NewInflater(r io.Reader) (io.ReadCloser, os.Error) {
} else {
z.r = bufio.NewReader(r);
}
n, err := io.ReadFull(z.r, z.scratch[0:2]);
_, err := io.ReadFull(z.r, z.scratch[0:2]);
if err != nil {
return nil, err;
}
......
......@@ -77,7 +77,7 @@ var zlibTests = []zlibTest {
func TestInflater(t *testing.T) {
b := new(bytes.Buffer);
for i, tt := range zlibTests {
for _, tt := range zlibTests {
in := bytes.NewBuffer(tt.compressed);
zlib, err := NewInflater(in);
if err != nil {
......
......@@ -102,7 +102,7 @@ func (p *IntVector) Less(i, j int) bool {
// Iterate over all elements; driver for range
func (p *IntVector) iterate(c chan<- int) {
for i, v := range p.a {
for _, v := range p.a {
c <- v.(int)
}
close(c);
......
......@@ -101,7 +101,7 @@ func (p *StringVector) Less(i, j int) bool {
// Iterate over all elements; driver for range
func (p *StringVector) iterate(c chan<- string) {
for i, v := range p.a {
for _, v := range p.a {
c <- v.(string)
}
close(c);
......
......@@ -230,7 +230,7 @@ func (p *Vector) Swap(i, j int) {
// Iterate over all elements; driver for range
func (p *Vector) iterate(c chan<- Element) {
for i, v := range p.a {
for _, v := range p.a {
c <- v
}
close(c);
......
......@@ -67,7 +67,7 @@ var cbcAESTests = []cbcTest {
}
func TestCBC_AES(t *testing.T) {
for i, tt := range cbcAESTests {
for _, tt := range cbcAESTests {
test := tt.name;
c, err := aes.NewCipher(tt.key);
......
......@@ -271,7 +271,7 @@ var cfbAESTests = []cfbTest {
}
func TestCFB_AES(t *testing.T) {
for i, tt := range cfbAESTests {
for _, tt := range cfbAESTests {
test := tt.name;
if tt.s == 1 {
......
......@@ -70,7 +70,7 @@ func (d *cmac) Reset() {
// Write adds the given data to the digest state.
func (d *cmac) Write(p []byte) (n int, err os.Error) {
// Xor input into ci.
for i, c := range p {
for _, c := range p {
// If ci is full, encrypt and start over.
if d.p >= len(d.ci) {
d.c.Encrypt(d.ci, d.ci);
......
......@@ -71,7 +71,7 @@ var ctrAESTests = []ctrTest {
}
func TestCTR_AES(t *testing.T) {
for i, tt := range ctrAESTests {
for _, tt := range ctrAESTests {
test := tt.name;
c, err := aes.NewCipher(tt.key);
......
......@@ -127,7 +127,7 @@ func (x *ecbDecrypter) Read(p []byte) (n int, err os.Error) {
if i < n {
p = p[i:n];
for j, v := range p {
x.buf[j] = p[j];
x.buf[j] = v;
}
x.crypt = x.buf[0:len(p)];
n = i;
......
......@@ -100,7 +100,7 @@ var ecbAESTests = []ecbTest {
}
func TestECB_AES(t *testing.T) {
for i, tt := range ecbAESTests {
for _, tt := range ecbAESTests {
test := tt.name;
c, err := aes.NewCipher(tt.key);
......
......@@ -75,20 +75,20 @@ func TestECBEncrypter(t *testing.T) {
// copy plain into w in increasingly large chunks: 1, 1, 2, 4, 8, ...
// if frag != 0, move the 1 to the end to cause fragmentation.
if frag == 0 {
nn, err := io.Copyn(r, w, 1);
_, err := io.Copyn(r, w, 1);
if err != nil {
t.Errorf("block=%d frag=0: first Copyn: %s", block, err);
continue;
}
}
for n := 1; n <= len(plain)/2; n *= 2 {
nn, err := io.Copyn(r, w, int64(n));
_, err := io.Copyn(r, w, int64(n));
if err != nil {
t.Errorf("block=%d frag=%d: Copyn %d: %s", block, frag, n, err);
}
}
if frag != 0 {
nn, err := io.Copyn(r, w, 1);
_, err := io.Copyn(r, w, 1);
if err != nil {
t.Errorf("block=%d frag=1: last Copyn: %s", block, err);
continue;
......@@ -140,20 +140,20 @@ func testECBDecrypter(t *testing.T, maxio int) {
// read from crypt in increasingly large chunks: 1, 1, 2, 4, 8, ...
// if frag == 1, move the 1 to the end to cause fragmentation.
if frag == 0 {
nn, err := io.Copyn(r, b, 1);
_, err := io.Copyn(r, b, 1);
if err != nil {
t.Errorf("%s: first Copyn: %s", test, err);
continue;
}
}
for n := 1; n <= maxio/2; n *= 2 {
nn, err := io.Copyn(r, b, int64(n));
_, err := io.Copyn(r, b, int64(n));
if err != nil {
t.Errorf("%s: Copyn %d: %s", test, n, err);
}
}
if frag != 0 {
nn, err := io.Copyn(r, b, 1);
_, err := io.Copyn(r, b, 1);
if err != nil {
t.Errorf("%s: last Copyn: %s", test, err);
continue;
......
......@@ -67,7 +67,7 @@ var ofbAESTests = []ofbTest {
}
func TestOFB_AES(t *testing.T) {
for i, tt := range ofbAESTests {
for _, tt := range ofbAESTests {
test := tt.name;
c, err := aes.NewCipher(tt.key);
......
......@@ -60,14 +60,14 @@ func testXorWriter(t *testing.T, maxio int) {
// copy plain into w in increasingly large chunks: 1, 1, 2, 4, 8, ...
// if frag != 0, move the 1 to the end to cause fragmentation.
if frag == 0 {
nn, err := io.Copyn(r, w, 1);
_, err := io.Copyn(r, w, 1);
if err != nil {
t.Errorf("%s: first Copyn: %s", test, err);
continue;
}
}
for n := 1; n <= len(plain)/2; n *= 2 {
nn, err := io.Copyn(r, w, int64(n));
_, err := io.Copyn(r, w, int64(n));
if err != nil {
t.Errorf("%s: Copyn %d: %s", test, n, err);
}
......@@ -128,14 +128,14 @@ func testXorReader(t *testing.T, maxio int) {
// read from crypt in increasingly large chunks: 1, 1, 2, 4, 8, ...
// if frag == 1, move the 1 to the end to cause fragmentation.
if frag == 0 {
nn, err := io.Copyn(r, b, 1);
_, err := io.Copyn(r, b, 1);
if err != nil {
t.Errorf("%s: first Copyn: %s", test, err);
continue;
}
}
for n := 1; n <= maxio/2; n *= 2 {
nn, err := io.Copyn(r, b, int64(n));
_, err := io.Copyn(r, b, int64(n));
if err != nil {
t.Errorf("%s: Copyn %d: %s", test, n, err);
}
......
......@@ -728,7 +728,7 @@ func (f Format) Print(args ...) (int, os.Error) {
//
func (f Format) Sprint(args ...) string {
var buf bytes.Buffer;
n, err := f.Fprint(&buf, nil, args);
_, err := f.Fprint(&buf, nil, args);
if err != nil {
fmt.Fprintf(&buf, "--- Sprint(%s) failed: %v", fmt.Sprint(args), err);
}
......
......@@ -368,7 +368,7 @@ func Parse(filename string, src []byte, fmap FormatterMap) (Format, os.Error) {
// add custom formatters, if any
for name, form := range fmap {
name = remap(&p, name);
if t, found := p.rules[name]; !found {
if _, found := p.rules[name]; !found {
p.rules[name] = &custom{name, form};
} else {
var invalidPos token.Position;
......
......@@ -89,7 +89,7 @@ func Read(r io.Reader, order ByteOrder, data interface{}) os.Error {
return os.NewError("binary.Read: invalid type " + v.Type().String());
}
d := &decoder{order: order, buf: make([]byte, size)};
if n, err := io.ReadFull(r, d.buf); err != nil {
if _, err := io.ReadFull(r, d.buf); err != nil {
return err;
}
d.value(v);
......
......@@ -63,12 +63,12 @@ func (t *LineTable) slice(pc uint64) *LineTable {
}
func (t *LineTable) PCToLine(pc uint64) int {
b, pc, line := t.parse(pc, -1);
_, _, line := t.parse(pc, -1);
return line;
}
func (t *LineTable) LineToPC(line int, maxpc uint64) uint64 {
b, pc, line1 := t.parse(maxpc, line);
_, pc, line1 := t.parse(maxpc, line);
if line1 != line {
return 0;
}
......
......@@ -123,7 +123,7 @@ func (p *Production) Pos() token.Position {
// Grammar verification
func isLexical(name string) bool {
ch, len := utf8.DecodeRuneInString(name);
ch, _ := utf8.DecodeRuneInString(name);
return !unicode.IsUpper(ch);
}
......
......@@ -195,7 +195,7 @@ func (p *parser) parse(filename string, src []byte) Grammar {
for p.tok != token.EOF {
prod := p.parseProduction();
name := prod.Name.String;
if prev, found := grammar[name]; !found {
if _, found := grammar[name]; !found {
grammar[name] = prod;
} else {
p.Error(prod.Pos(), name + " declared already");
......
......@@ -158,9 +158,9 @@ func (p *Cmd) Close() os.Error {
// Loop on interrupt, but
// ignore other errors -- maybe
// caller has already waited for pid.
w, err := p.Wait(0);
_, err := p.Wait(0);
for err == os.EINTR {
w, err = p.Wait(0);
_, err = p.Wait(0);
}
}
......@@ -209,7 +209,7 @@ func LookPath(file string) (string, os.Error) {
return "", os.ENOENT;
}
pathenv := os.Getenv("PATH");
for i, dir := range strings.Split(pathenv, ":", 0) {
for _, dir := range strings.Split(pathenv, ":", 0) {
if dir == "" {
// Unix shell semantics: path element "" means "."
dir = ".";
......
......@@ -203,14 +203,14 @@ var flags *allFlags = &allFlags{make(map[string] *Flag), make(map[string] *Flag)
// VisitAll visits the flags, calling fn for each. It visits all flags, even those not set.
func VisitAll(fn func(*Flag)) {
for k, f := range flags.formal {
for _, f := range flags.formal {
fn(f)
}
}
// Visit visits the flags, calling fn for each. It visits only those flags that have been set.
func Visit(fn func(*Flag)) {
for k, f := range flags.actual {
for _, f := range flags.actual {
fn(f)
}
}
......@@ -243,7 +243,7 @@ func Set(name, value string) bool {
func PrintDefaults() {
VisitAll(func(f *Flag) {
format := " -%s=%s: %s\n";
if s, ok := f.Value.(*stringValue); ok {
if _, ok := f.Value.(*stringValue); ok {
// put quotes on the value
format = " -%s=%q: %s\n";
}
......@@ -285,7 +285,7 @@ func Args() []string {
func add(name string, value FlagValue, usage string) {
// Remember the default value as a string; it won't change.
f := &Flag{name, usage, value, value.String()};
dummy, alreadythere := flags.formal[name];
_, alreadythere := flags.formal[name];
if alreadythere {
fmt.Fprintln(os.Stderr, "flag redefined:", name);
panic("flag redefinition"); // Happens only if flags are declared with identical names
......
......@@ -194,7 +194,7 @@ var fmttests = []fmtTest{
}
func TestSprintf(t *testing.T) {
for i, tt := range fmttests {
for _, tt := range fmttests {
s := Sprintf(tt.fmt, tt.val);
if i := strings.Index(s, "0x"); i >= 0 && strings.Index(tt.out, "PTR") >= 0 {
j := i+2;
......@@ -207,7 +207,7 @@ func TestSprintf(t *testing.T) {
s = s[0:i] + "PTR" + s[j:len(s)];
}
if s != tt.out {
if ss, ok := tt.val.(string); ok {
if _, ok := tt.val.(string); ok {
// Don't requote the already-quoted strings.
// It's too confusing to read the errors.
t.Errorf("Sprintf(%q, %q) = %s want %s", tt.fmt, tt.val, s, tt.out);
......@@ -258,7 +258,7 @@ var flagtests = []flagTest {
func TestFlagParser(t *testing.T) {
var flagprinter flagPrinter;
for i, tt := range flagtests {
for _, tt := range flagtests {
s := Sprintf(tt.in, &flagprinter);
if s != tt.out {
t.Errorf("Sprintf(%q, &flagprinter) => %q, want %q", tt.in, s, tt.out);
......@@ -283,7 +283,7 @@ func TestStructPrinter(t *testing.T) {
Test{ "%v", "{abc def 123}" },
Test{ "%+v", "{a:abc b:def c:123}" },
};
for i, tt := range tests {
for _, tt := range tests {
out := Sprintf(tt.fmt, s);
if out != tt.out {
t.Errorf("Sprintf(%q, &s) = %q, want %q", tt.fmt, out, tt.out);
......
......@@ -680,7 +680,7 @@ func (p *pp) doprintf(format string, v *reflect.StructValue) {
// int
case 'b':
if v, signed, ok := getInt(field); ok {
if v, _, ok := getInt(field); ok {
s = p.fmt.Fmt_b64(uint64(v)).Str() // always unsigned
} else if v, ok := getFloat32(field); ok {
s = p.fmt.Fmt_fb32(v).Str()
......@@ -690,7 +690,7 @@ func (p *pp) doprintf(format string, v *reflect.StructValue) {
goto badtype
}
case 'c':
if v, signed, ok := getInt(field); ok {
if v, _, ok := getInt(field); ok {
s = p.fmt.Fmt_c(int(v)).Str()
} else {
goto badtype
......
......@@ -350,7 +350,7 @@ func (x *ChanType) exprNode() {}
// IsExported returns whether name is an exported Go symbol
// (i.e., whether it begins with an uppercase letter).
func IsExported(name string) bool {
ch, len := utf8.DecodeRuneInString(name);
ch, _ := utf8.DecodeRuneInString(name);
return unicode.IsUpper(ch);
}
......
......@@ -43,13 +43,13 @@ func setupRegexps() {
func commentText(comments []string) string {
once.Do(setupRegexps);
lines := make([]string, 0, 20);
for i, c := range comments {
for _, c := range comments {
// split on newlines
cl := strings.Split(c, "\n", 0);
// walk lines, stripping comment markers
w := 0;
for j, l := range cl {
for _, l := range cl {
// remove /* and */ lines
if comment_junk.MatchString(l) {
continue;
......@@ -85,7 +85,7 @@ func commentText(comments []string) string {
// add this comment to total list
// TODO: maybe separate with a single blank line
// if there is already a comment and len(cl) > 0?
for j, l := range cl {
for _, l := range cl {
n := len(lines);
if n+1 >= cap(lines) {
newlines := make([]string, n, 2*cap(lines));
......@@ -205,7 +205,7 @@ func unindent(block [][]byte) {
// compute maximum common white prefix
prefix := block[0][0 : indentLen(block[0])];
for i, line := range block {
for _, line := range block {
if !isBlank(line) {
prefix = commonPrefix(prefix, line[0 : indentLen(line)]);
}
......@@ -288,7 +288,7 @@ func ToHtml(w io.Writer, s []byte) {
// they don't get the nice text formatting,
// just html escaping
w.Write(html_pre);
for k, line := range block {
for _, line := range block {
template.HtmlEscape(w, line);
}
w.Write(html_endpre);
......
......@@ -563,7 +563,7 @@ func isRegexp(s string) bool {
func match(s string, a []string) bool {
for _, t := range a {
if isRegexp(t) {
if matched, err := regexp.MatchString(t, s); matched {
if matched, _ := regexp.MatchString(t, s); matched {
return true;
}
}
......
......@@ -38,7 +38,7 @@ func readSource(filename string, src interface{}) ([]byte, os.Error) {
}
case io.Reader:
var buf bytes.Buffer;
n, err := io.Copy(s, &buf);
_, err := io.Copy(s, &buf);
if err != nil {
return nil, err;
}
......
......@@ -650,7 +650,7 @@ func (p *parser) parseMethodSpec() *ast.Field {
var idents []*ast.Ident;
var typ ast.Expr;
x := p.parseQualifiedIdent();
if tmp, isIdent := x.(*ast.Ident); isIdent && (p.tok == token.COMMA || p.tok == token.LPAREN) {
if _, isIdent := x.(*ast.Ident); isIdent && (p.tok == token.COMMA || p.tok == token.LPAREN) {
// methods
idents = p.parseIdentList(x);
params, results := p.parseSignature();
......
......@@ -21,7 +21,7 @@ var illegalInputs = []interface{} {
func TestParseIllegalInputs(t *testing.T) {
for _, src := range illegalInputs {
prog, err := ParseFile("", src, 0);
_, err := ParseFile("", src, 0);
if err == nil {
t.Errorf("ParseFile(%v) should have failed", src);
}
......@@ -37,7 +37,7 @@ var validPrograms = []interface{} {
func TestParseValidPrograms(t *testing.T) {
for _, src := range validPrograms {
prog, err := ParseFile("", src, 0);
_, err := ParseFile("", src, 0);
if err != nil {
t.Errorf("ParseFile(%q): %v", src, err);
}
......@@ -53,7 +53,7 @@ var validFiles = []string {
func TestParse3(t *testing.T) {
for _, filename := range validFiles {
prog, err := ParseFile(filename, nil, 0);
_, err := ParseFile(filename, nil, 0);
if err != nil {
t.Errorf("ParseFile(%s): %v", filename, err);
}
......
......@@ -847,7 +847,7 @@ func (p *printer) block(s *ast.BlockStmt) {
func (p *printer) switchBlock(s *ast.BlockStmt) {
p.print(s.Pos(), token.LBRACE);
if len(s.List) > 0 {
for i, s := range s.List {
for _, s := range s.List {
// s is one of *ast.CaseClause, *ast.TypeCaseClause, *ast.CommClause;
p.print(newline);
p.stmt(s);
......
......@@ -282,7 +282,7 @@ func TestLineComments(t *testing.T) {
var S Scanner;
S.Init("TestLineComments", strings.Bytes(src), nil, 0);
for _, s := range segments {
pos, tok, lit := S.Scan();
pos, _, lit := S.Scan();
checkPos(t, string(lit), pos, token.Position{s.filename, pos.Offset, s.line, pos.Column});
}
......@@ -300,14 +300,14 @@ func TestInit(t *testing.T) {
s.Init("", strings.Bytes("if true { }"), nil, 0);
s.Scan(); // if
s.Scan(); // true
pos, tok, lit := s.Scan(); // {
_, tok, _ := s.Scan(); // {
if tok != token.LBRACE {
t.Errorf("bad token: got %s, expected %s", tok.String(), token.LBRACE);
}
// 2nd init
s.Init("", strings.Bytes("go true { ]"), nil, 0);
pos, tok, lit = s.Scan(); // go
_, tok, _ = s.Scan(); // go
if tok != token.GO {
t.Errorf("bad token: got %s, expected %s", tok.String(), token.GO);
}
......
......@@ -42,7 +42,7 @@ func TestUintCodec(t *testing.T) {
b := new(bytes.Buffer);
encState := new(encoderState);
encState.b = b;
for i, tt := range encodeT {
for _, tt := range encodeT {
b.Reset();
encodeUint(encState, tt.x);
if encState.err != nil {
......
......@@ -45,7 +45,7 @@ func overflow(name string) os.ErrorString {
// decodeUintReader reads an encoded unsigned integer from an io.Reader.
// Used only by the Decoder to read the message length.
func decodeUintReader(r io.Reader, buf []byte) (x uint64, err os.Error) {
n1, err := r.Read(buf[0:1]);
_, err = r.Read(buf[0:1]);
if err != nil {
return
}
......
......@@ -37,7 +37,7 @@ func NewDecoder(r io.Reader) *Decoder {
func (dec *Decoder) recvType(id typeId) {
// Have we already seen this type? That's an error
if wt_, alreadySeen := dec.seen[id]; alreadySeen {
if _, alreadySeen := dec.seen[id]; alreadySeen {
dec.state.err = os.ErrorString("gob: duplicate type received");
return
}
......@@ -54,8 +54,6 @@ func (dec *Decoder) recvType(id typeId) {
// The value underlying e must be the correct type for the next
// data item received.
func (dec *Decoder) Decode(e interface{}) os.Error {
rt, indir := indirect(reflect.Typeof(e));
// Make sure we're single-threaded through here.
dec.mutex.Lock();
defer dec.mutex.Unlock();
......
......@@ -372,7 +372,7 @@ func encOpFor(rt reflect.Type) (encOp, int, os.Error) {
};
case *reflect.StructType:
// Generate a closure that calls out to the engine for the nested type.
engine, err := getEncEngine(typ);
_, err := getEncEngine(typ);
if err != nil {
return nil, 0, err
}
......
......@@ -237,7 +237,7 @@ func (enc *Encoder) send() {
func (enc *Encoder) sendType(origt reflect.Type) {
// Drill down to the base type.
rt, indir_ := indirect(origt);
rt, _ := indirect(origt);
// We only send structs - everything else is basic or an error
switch rt.(type) {
......@@ -259,7 +259,7 @@ func (enc *Encoder) sendType(origt reflect.Type) {
}
// Have we already sent this type? This time we ask about the base type.
if id_, alreadySent := enc.sent[rt]; alreadySent {
if _, alreadySent := enc.sent[rt]; alreadySent {
return
}
......@@ -296,7 +296,7 @@ func (enc *Encoder) Encode(e interface{}) os.Error {
if enc.state.b.Len() > 0 || enc.countState.b.Len() > 0 {
panicln("Encoder: buffer not empty")
}
rt, indir := indirect(reflect.Typeof(e));
rt, _ := indirect(reflect.Typeof(e));
// Make sure we're single-threaded through here.
enc.mutex.Lock();
......@@ -304,7 +304,7 @@ func (enc *Encoder) Encode(e interface{}) os.Error {
// Make sure the type is known to the other side.
// First, have we already sent this type?
if id_, alreadySent := enc.sent[rt]; !alreadySent {
if _, alreadySent := enc.sent[rt]; !alreadySent {
// No, so send it.
enc.sendType(rt);
if enc.state.err != nil {
......
......@@ -292,7 +292,7 @@ func newTypeObject(name string, rt reflect.Type) (gobType, os.Error) {
field := make([]*fieldType, t.NumField());
for i := 0; i < t.NumField(); i++ {
f := t.Field(i);
typ, _indir := indirect(f.Type);
typ, _ := indirect(f.Type);
tname := typ.Name();
if tname == "" {
tname = f.Type.String();
......@@ -384,7 +384,7 @@ var typeInfoMap = make(map[reflect.Type] *typeInfo) // protected by typeLock
// The reflection type must have all its indirections processed out.
// typeLock must be held.
func getTypeInfo(rt reflect.Type) (*typeInfo, os.Error) {
if pt, ok := rt.(*reflect.PtrType); ok {
if _, ok := rt.(*reflect.PtrType); ok {
panicln("pointer type in getTypeInfo:", rt.String())
}
info, ok := typeInfoMap[rt];
......
......@@ -40,7 +40,7 @@ type Response struct {
// response headers with the given key, it returns the empty string and
// false. Keys are not case sensitive.
func (r *Response) GetHeader(key string) (value string) {
value, present := r.Header[CanonicalHeaderKey(key)];
value, _ = r.Header[CanonicalHeaderKey(key)];
return;
}
......
......@@ -17,7 +17,7 @@ func TestClient(t *testing.T) {
// TODO: add a proper test suite. Current test merely verifies that
// we can retrieve the Google robots.txt file.
r, url, err := Get("http://www.google.com/robots.txt");
r, _, err := Get("http://www.google.com/robots.txt");
var b []byte;
if err == nil {
b, err = io.ReadAll(r.Body);
......
......@@ -58,7 +58,7 @@ func dirList(c *Conn, f *os.File) {
if err != nil || len(dirs) == 0 {
break
}
for i, d := range dirs {
for _, d := range dirs {
name := d.Name;
if d.IsDirectory() {
name += "/"
......@@ -141,7 +141,7 @@ func serveFileInternal(c *Conn, r *Request, name string, redirect bool) {
} else {
// read first chunk to decide between utf-8 text and binary
var buf [1024]byte;
n, err := io.ReadFull(f, &buf);
n, _ := io.ReadFull(f, &buf);
b := buf[0:n];
if isText(b) {
c.SetHeader("Content-Type", "text-plain; charset=utf-8");
......
......@@ -508,7 +508,7 @@ func ReadRequest(b *bufio.Reader) (req *Request, err os.Error) {
// like
// Cache-Control: no-cache
if v, present := req.Header["Pragma"]; present && v == "no-cache" {
if cc, presentcc := req.Header["Cache-Control"]; !presentcc {
if _, presentcc := req.Header["Cache-Control"]; !presentcc {
req.Header["Cache-Control"] = "no-cache"
}
}
......
......@@ -367,7 +367,7 @@ func Redirect(c *Conn, url string, code int) {
// no leading http://server
if url == "" || url[0] != '/' {
// make relative path absolute
olddir, oldfile := path.Split(oldpath);
olddir, _ := path.Split(oldpath);
url = olddir + url;
}
......
......@@ -190,7 +190,7 @@ func ufmt(u *URL) string {
}
func DoTest(t *testing.T, parse func(string) (*URL, os.Error), name string, tests []URLTest) {
for i, tt := range tests {
for _, tt := range tests {
u, err := parse(tt.in);
if err != nil {
t.Errorf("%s(%q) returned error %s", name, tt.in, err);
......@@ -214,7 +214,7 @@ func TestParseURLReference(t *testing.T) {
}
func DoTestString(t *testing.T, parse func(string) (*URL, os.Error), name string, tests []URLTest) {
for i, tt := range tests {
for _, tt := range tests {
u, err := parse(tt.in);
if err != nil {
t.Errorf("%s(%q) returned error %s", name, tt.in, err);
......@@ -305,7 +305,7 @@ var unescapeTests = []URLEscapeTest {
}
func TestURLUnescape(t *testing.T) {
for i, tt := range unescapeTests {
for _, tt := range unescapeTests {
actual, err := URLUnescape(tt.in);
if actual != tt.out || (err != nil) != (tt.err != nil) {
t.Errorf("URLUnescape(%q) = %q, %s; want %q, %s", tt.in, actual, err, tt.out, tt.err);
......@@ -342,7 +342,7 @@ var escapeTests = []URLEscapeTest {
}
func TestURLEscape(t *testing.T) {
for i, tt := range escapeTests {
for _, tt := range escapeTests {
actual := URLEscape(tt.in);
if tt.out != actual {
t.Errorf("URLEscape(%q) = %q, want %q", tt.in, actual, tt.out);
......
......@@ -185,7 +185,7 @@ func (p PalettedColorModel) Convert(c Color) Color {
// TODO(nigeltao): Revisit the "pick the palette color which minimizes sum-squared-difference"
// algorithm when the premultiplied vs unpremultiplied issue is resolved.
// Currently, we only compare the R, G and B values, and ignore A.
cr, cg, cb, ca := c.RGBA();
cr, cg, cb, _ := c.RGBA();
// Shift by 17 bits to avoid potential uint32 overflow in sum-squared-difference.
cr >>= 17;
cg >>= 17;
......@@ -193,7 +193,7 @@ func (p PalettedColorModel) Convert(c Color) Color {
result := Color(nil);
bestSSD := uint32(1<<32 - 1);
for _, v := range p {
vr, vg, vb, va := v.RGBA();
vr, vg, vb, _ := v.RGBA();
vr >>= 17;
vg >>= 17;
vb >>= 17;
......
......@@ -106,7 +106,7 @@ func (d *decoder) parseIHDR(r io.Reader, crc hash.Hash32, length uint32) os.Erro
if length != 13 {
return FormatError("bad IHDR length");
}
n, err := io.ReadFull(r, d.scratch[0:13]);
_, err := io.ReadFull(r, d.scratch[0:13]);
if err != nil {
return err;
}
......@@ -402,7 +402,7 @@ func (d *decoder) parseChunk(r io.Reader) os.Error {
}
func (d *decoder) checkHeader(r io.Reader) os.Error {
n, err := io.ReadFull(r, d.scratch[0:8]);
_, err := io.ReadFull(r, d.scratch[0:8]);
if err != nil {
return err;
}
......
......@@ -14,7 +14,7 @@ import (
// ReadAll reads from r until an error or EOF and returns the data it read.
func ReadAll(r Reader) ([]byte, os.Error) {
var buf bytes.Buffer;
n, err := Copy(r, &buf);
_, err := Copy(r, &buf);
return buf.Data(), err;
}
......
......@@ -97,7 +97,7 @@ func (l *Logger) formatHeader(ns int64, calldepth int) string {
}
}
if l.flag & (Lshortfile | Llongfile) != 0 {
pc, file, line, ok := runtime.Caller(calldepth);
_, file, line, ok := runtime.Caller(calldepth);
if ok {
if l.flag & Lshortfile != 0 {
short, ok := shortnames[file];
......
......@@ -75,7 +75,7 @@ func testLog(t *testing.T, flag int, prefix string, pattern string, useLogf bool
}
func TestAllLog(t *testing.T) {
for i, testcase := range tests {
for _, testcase := range tests {
testLog(t, testcase.flag, testcase.prefix, testcase.pattern, false);
testLog(t, testcase.flag, testcase.prefix, testcase.pattern, true);
}
......
......@@ -14,7 +14,7 @@ func Floor(x float64) float64 {
}
return -d;
}
d, fract := Modf(x);
d, _ := Modf(x);
return d;
}
......
......@@ -29,7 +29,7 @@ func sinus(x float64, quad int) float64 {
var e float64;
e, y = Modf(x);
e = e + float64(quad);
temp1, f := Modf(0.25*e);
_, f := Modf(0.25*e);
quad = int(e - 4*f);
} else {
k := int32(x);
......
......@@ -79,19 +79,19 @@ func _DNS_ReadConfig() (*_DNS_Config, os.Error) {
s := f[i];
switch {
case len(s) >= 6 && s[0:6] == "ndots:":
n, i, ok := dtoi(s, 6);
n, _, _ := dtoi(s, 6);
if n < 1 {
n = 1
}
conf.ndots = n;
case len(s) >= 8 && s[0:8] == "timeout:":
n, i, ok := dtoi(s, 8);
n, _, _ := dtoi(s, 8);
if n < 1 {
n = 1
}
conf.timeout = n;
case len(s) >= 8 && s[0:9] == "attempts:":
n, i, ok := dtoi(s, 9);
n, _, _ := dtoi(s, 9);
if n < 1 {
n = 1
}
......
......@@ -244,8 +244,8 @@ func (s *pollServer) Run() {
}
if fd == s.pr.Fd() {
// Drain our wakeup pipe.
for nn, e := s.pr.Read(&scratch); nn > 0; {
nn, e = s.pr.Read(&scratch)
for nn, _ := s.pr.Read(&scratch); nn > 0; {
nn, _ = s.pr.Read(&scratch)
}
// Read from channels
......@@ -327,7 +327,7 @@ func (fd *netFD) addr() string {
if e != 0 {
return "";
}
addr, err := sockaddrToString(sa);
addr, _ := sockaddrToString(sa);
return addr;
}
......@@ -336,7 +336,7 @@ func (fd *netFD) remoteAddr() string {
if e != 0 {
return "";
}
addr, err := sockaddrToString(sa);
addr, _ := sockaddrToString(sa);
return addr;
}
......
......@@ -220,7 +220,7 @@ func hostPortToIP(net, hostport, mode string) (ip IP, iport int, err os.Error) {
}
if addr == nil {
// Not an IP address. Try as a DNS name.
hostname, addrs, err1 := LookupHost(host);
_, addrs, err1 := LookupHost(host);
if err1 != nil {
err = err1;
goto Error;
......
......@@ -63,7 +63,7 @@ func TestDialError(t *testing.T) {
continue;
}
s := e.String();
match, err := regexp.MatchString(tt.Pattern, s);
match, _ := regexp.MatchString(tt.Pattern, s);
if !match {
t.Errorf("#%d: %q, want match for %#q", i, s, tt.Pattern);
}
......
......@@ -46,7 +46,7 @@ func (f *file) readLine() (s string, ok bool) {
}
if len(f.data) < cap(f.data) {
ln := len(f.data);
n, err := io.ReadFull(f.file, f.data[ln:cap(f.data)]);
n, _ := io.ReadFull(f.file, f.data[ln:cap(f.data)]);
if n >= 0 {
f.data = f.data[0:ln+n];
}
......
......@@ -33,7 +33,7 @@ func runServe(t *testing.T, network, addr string, listening chan<- string, done
listening <- l.Addr();
for {
fd, addr, err := l.Accept();
fd, _, err := l.Accept();
if err != nil {
break;
}
......
......@@ -18,7 +18,7 @@ var env map[string] string;
func copyenv() {
env = make(map[string] string);
for i, s := range Envs {
for _, s := range Envs {
for j := 0; j < len(s); j++ {
if s[j] == '=' {
env[s[0:j]] = s[j+1:len(s)];
......
......@@ -148,12 +148,12 @@ func (w Waitmsg) String() string {
// Getpid returns the process id of the caller.
func Getpid() int {
p, r2, e := syscall.Syscall(syscall.SYS_GETPID, 0, 0, 0);
p, _, _ := syscall.Syscall(syscall.SYS_GETPID, 0, 0, 0);
return int(p)
}
// Getppid returns the process id of the caller's parent.
func Getppid() int {
p, r2, e := syscall.Syscall(syscall.SYS_GETPPID, 0, 0, 0);
p, _, _ := syscall.Syscall(syscall.SYS_GETPPID, 0, 0, 0);
return int(p)
}
......@@ -65,8 +65,8 @@ func Getwd() (string, Error) {
fd.Close();
return "", err;
}
for i, name := range names {
d, err := Lstat(parent + "/" + name);
for _, name := range names {
d, _ := Lstat(parent + "/" + name);
if d.Dev == dot.Dev && d.Ino == dot.Ino {
pwd = "/" + name + pwd;
goto Found;
......
......@@ -110,9 +110,9 @@ func testReaddirnames(dir string, contents []string, t *testing.T) {
if err2 != nil {
t.Fatalf("readdirnames %q failed: %v", err2);
}
for i, m := range contents {
for _, m := range contents {
found := false;
for j, n := range s {
for _, n := range s {
if n == "." || n == ".." {
t.Errorf("got %s in directory", n);
}
......@@ -139,9 +139,9 @@ func testReaddir(dir string, contents []string, t *testing.T) {
if err2 != nil {
t.Fatalf("readdir %q failed: %v", dir, err2);
}
for i, m := range contents {
for _, m := range contents {
found := false;
for j, n := range s {
for _, n := range s {
if m == n.Name {
if found {
t.Error("present twice:", m);
......@@ -412,7 +412,7 @@ func TestChown(t *testing.T) {
t.Fatalf("getgroups: %s", err);
}
t.Log("groups: ", groups);
for i, g := range groups {
for _, g := range groups {
if err = Chown(Path, -1, g); err != nil {
t.Fatalf("chown %s -1 %d: %s", Path, g, err);
}
......@@ -468,7 +468,7 @@ func TestChdirAndGetwd(t *testing.T) {
// (unlike, say, /var, /etc, and /tmp).
dirs := []string{ "/bin", "/", "/usr/bin" };
for mode := 0; mode < 2; mode++ {
for i, d := range dirs {
for _, d := range dirs {
if mode == 0 {
err = Chdir(d);
} else {
......@@ -577,7 +577,7 @@ var openErrorTests = []openErrorTest {
}
func TestOpenError(t *testing.T) {
for i, tt := range openErrorTests {
for _, tt := range openErrorTests {
f, err := Open(tt.path, tt.mode, 0);
if err == nil {
t.Errorf("Open(%q, %d) succeeded", tt.path, tt.mode);
......
......@@ -90,7 +90,7 @@ func RemoveAll(path string) Error {
err = nil;
for {
names, err1 := fd.Readdirnames(100);
for i, name := range names {
for _, name := range names {
err1 := RemoveAll(path + "/" + name);
if err == nil {
err = err1;
......
......@@ -26,7 +26,7 @@ func TestMkdirAll(t *testing.T) {
// Make file.
fpath := path + "/file";
fd, err := Open(fpath, O_WRONLY | O_CREAT, 0666);
_, err = Open(fpath, O_WRONLY | O_CREAT, 0666);
if err != nil {
t.Fatalf("create %q: %s", fpath, err);
}
......@@ -79,7 +79,7 @@ func TestRemoveAll(t *testing.T) {
if err = RemoveAll(path); err != nil {
t.Fatalf("RemoveAll %q (first): %s", path, err);
}
if dir, err := Lstat(path); err == nil {
if _, err := Lstat(path); err == nil {
t.Fatalf("Lstat %q succeeded after RemoveAll (first)", path);
}
......@@ -100,7 +100,7 @@ func TestRemoveAll(t *testing.T) {
if err = RemoveAll(path); err != nil {
t.Fatalf("RemoveAll %q (second): %s", path, err);
}
if dir, err := Lstat(path); err == nil {
if _, err := Lstat(path); err == nil {
t.Fatalf("Lstat %q succeeded after RemoveAll (second)", path);
}
......@@ -109,7 +109,7 @@ func TestRemoveAll(t *testing.T) {
t.Fatalf("MkdirAll %q: %s", dpath, err);
}
for i, s := range []string{fpath, dpath+"/file1", path+"/zzz"} {
for _, s := range []string{fpath, dpath+"/file1", path+"/zzz"} {
fd, err = Open(s, O_WRONLY | O_CREAT, 0666);
if err != nil {
t.Fatalf("create %q: %s", s, err);
......@@ -120,7 +120,7 @@ func TestRemoveAll(t *testing.T) {
t.Fatalf("Chmod %q 0: %s", dpath, err);
}
if err = RemoveAll(path); err == nil {
dir, err := Lstat(path);
_, err := Lstat(path);
if err == nil {
t.Errorf("Can lstat %q after supposed RemoveAll", path);
}
......@@ -136,15 +136,15 @@ func TestRemoveAll(t *testing.T) {
if err = Chmod(dpath, 0777); err != nil {
t.Fatalf("Chmod %q 0777: %s", dpath, err);
}
for i, s := range []string{fpath, path+"/zzz"} {
if dir, err := Lstat(s); err == nil {
for _, s := range []string{fpath, path+"/zzz"} {
if _, err := Lstat(s); err == nil {
t.Fatalf("Lstat %q succeeded after partial RemoveAll", s);
}
}
if err = RemoveAll(path); err != nil {
t.Fatalf("RemoveAll %q after partial RemoveAll: %s", path, err);
}
if dir, err := Lstat(path); err == nil {
if _, err := Lstat(path); err == nil {
t.Fatalf("Lstat %q succeeded after RemoveAll (final)", path);
}
}
......@@ -63,7 +63,7 @@ var cleantests = []CleanTest {
}
func TestClean(t *testing.T) {
for i, test := range cleantests {
for _, test := range cleantests {
if s := Clean(test.path); s != test.clean {
t.Errorf("Clean(%q) = %q, want %q", test.path, s, test.clean);
}
......@@ -83,7 +83,7 @@ var splittests = []SplitTest {
}
func TestSplit(t *testing.T) {
for i, test := range splittests {
for _, test := range splittests {
if d, f := Split(test.path); d != test.dir || f != test.file {
t.Errorf("Split(%q) = %q, %q, want %q, %q", test.path, d, f, test.dir, test.file);
}
......@@ -105,7 +105,7 @@ var jointests = []JoinTest {
}
func TestJoin(t *testing.T) {
for i, test := range jointests {
for _, test := range jointests {
if p := Join(test.dir, test.file); p != test.path {
t.Errorf("Join(%q, %q) = %q, want %q", test.dir, test.file, p, test.path);
}
......@@ -125,7 +125,7 @@ var exttests = []ExtTest {
}
func TestExt(t *testing.T) {
for i, test := range exttests {
for _, test := range exttests {
if x := Ext(test.path); x != test.ext {
t.Errorf("Ext(%q) = %q, want %q", test.path, x, test.ext);
}
......
......@@ -266,7 +266,7 @@ func TestInterfaceValue(t *testing.T) {
assert(t, v3.Type().String(), "float");
i3 := v2.Interface();
if f, ok := i3.(float); !ok {
if _, ok := i3.(float); !ok {
t.Error("v2.Interface() did not return float, got ", Typeof(i3));
}
}
......@@ -392,7 +392,7 @@ var deepEqualTests = []DeepEqualTest {
}
func TestDeepEqual(t *testing.T) {
for i, test := range deepEqualTests {
for _, test := range deepEqualTests {
if r := DeepEqual(test.a, test.b); r != test.eq {
t.Errorf("DeepEqual(%v, %v) = %v, want %v", test.a, test.b, r, test.eq);
}
......@@ -400,7 +400,7 @@ func TestDeepEqual(t *testing.T) {
}
func TestTypeof(t *testing.T) {
for i, test := range deepEqualTests {
for _, test := range deepEqualTests {
v := NewValue(test.a);
if v == nil {
continue;
......@@ -510,10 +510,10 @@ func NotNil(a interface{}, t *testing.T) {
func TestIsNil(t *testing.T) {
// These do not implement IsNil
doNotNil := []interface{}{ int(0), float32(0), struct{a int}{} };
for i, ts := range doNotNil {
for _, ts := range doNotNil {
ty := Typeof(ts);
v := MakeZero(ty);
if nilable, ok := v.(IsNiller); ok {
if _, ok := v.(IsNiller); ok {
t.Errorf("%s is nilable; should not be", ts)
}
}
......@@ -528,10 +528,10 @@ func TestIsNil(t *testing.T) {
struct{x chan int}{},
struct{x []string}{}
};
for i, ts := range doNil {
for _, ts := range doNil {
ty := Typeof(ts).(*StructType).Field(0).Type;
v := MakeZero(ty);
if nilable, ok := v.(IsNiller); !ok {
if _, ok := v.(IsNiller); !ok {
t.Errorf("%s %T is not nilable; should be", ts, v)
}
}
......
......@@ -45,7 +45,7 @@ func deepValueEqual(v1, v2 Value, visited map[uintptr]*visit, depth int) bool {
// ... or already seen
h := 17 * addr1 + addr2;
seen, ok := visited[h];
seen, _ := visited[h];
typ := v1.Type();
for p := seen; p != nil; p = p.next {
if p.a1 == addr1 && p.a2 == addr2 && p.typ == typ {
......@@ -105,7 +105,7 @@ func deepValueEqual(v1, v2 Value, visited map[uintptr]*visit, depth int) bool {
if map1.Len() != map2.Len() {
return false;
}
for i, k := range map1.Keys() {
for _, k := range map1.Keys() {
if !deepValueEqual(map1.Elem(k), map2.Elem(k), visited, depth+1) {
return false;
}
......
......@@ -1195,7 +1195,7 @@ func newFuncValue(typ Type, addr addr, canSet bool) *FuncValue {
func newValue(typ Type, addr addr, canSet bool) Value {
// FuncValue has a different layout;
// it needs a extra space for the fixed receivers.
if t, ok := typ.(*FuncType); ok {
if _, ok := typ.(*FuncType); ok {
return newFuncValue(typ, addr, canSet);
}
......
......@@ -348,7 +348,7 @@ var replaceTests = []ReplaceTest {
}
func TestReplaceAll(t *testing.T) {
for i, tc := range replaceTests {
for _, tc := range replaceTests {
re, err := Compile(tc.pattern);
if err != nil {
t.Errorf("Unexpected error compiling %q: %v", tc.pattern, err);
......@@ -379,7 +379,7 @@ var quoteMetaTests = []QuoteMetaTest {
}
func TestQuoteMeta(t *testing.T) {
for i, tc := range quoteMetaTests {
for _, tc := range quoteMetaTests {
// Verify that QuoteMeta returns the expected string.
quoted := QuoteMeta(tc.pattern);
if quoted != tc.output {
......@@ -449,7 +449,7 @@ func printStringSlice(t *testing.T, s []string) {
func TestAllMatches(t *testing.T) {
ch := make(chan matchCase);
go func() {
for i, c := range matchCases {
for _, c := range matchCases {
ch <- c;
stringCase := matchCase{
"string" + c.matchfunc,
......@@ -464,7 +464,7 @@ func TestAllMatches(t *testing.T) {
for c := range ch {
var result []string;
re, err := Compile(c.regexp);
re, _ := Compile(c.regexp);
switch c.matchfunc {
case "matchit":
......@@ -488,7 +488,7 @@ func TestAllMatches(t *testing.T) {
result = make([]string, len(c.input) + 1);
b := strings.Bytes(c.input);
i := 0;
for j, match := range re.AllMatches(b, c.n) {
for _, match := range re.AllMatches(b, c.n) {
result[i] = string(match);
i++;
}
......
......@@ -868,7 +868,7 @@ func (re *Regexp) ReplaceAllString(src, repl string) string {
lastMatchEnd = a[1];
// Advance past this match; always advance at least one character.
rune, width := utf8.DecodeRuneInString(src[searchPos:len(src)]);
_, width := utf8.DecodeRuneInString(src[searchPos:len(src)]);
if searchPos + width > a[1] {
searchPos += width;
} else if searchPos + 1 > a[1] {
......@@ -912,7 +912,7 @@ func (re *Regexp) ReplaceAll(src, repl []byte) []byte {
lastMatchEnd = a[1];
// Advance past this match; always advance at least one character.
rune, width := utf8.DecodeRune(src[searchPos:len(src)]);
_, width := utf8.DecodeRune(src[searchPos:len(src)]);
if searchPos + width > a[1] {
searchPos += width;
} else if searchPos + 1 > a[1] {
......
......@@ -92,7 +92,7 @@ func (client *Client) input() {
// Terminate pending calls.
client.mutex.Lock();
client.shutdown = err;
for seq, call := range client.pending {
for _, call := range client.pending {
call.Error = err;
_ = call.Done <- call; // do not block
}
......
......@@ -170,7 +170,7 @@ var server = &serverType{ serviceMap: make(map[string] *service) }
// Is this a publicly vislble - upper case - name?
func isPublic(name string) bool {
rune, wid_ := utf8.DecodeRuneInString(name);
rune, _ := utf8.DecodeRuneInString(name);
return unicode.IsUpper(rune)
}
......@@ -354,7 +354,7 @@ func (server *serverType) input(conn io.ReadWriteCloser) {
func (server *serverType) accept(lis net.Listener) {
for {
conn, addr, err := lis.Accept();
conn, _, err := lis.Accept();
if err != nil {
log.Exit("rpc.Serve: accept:", err.String()); // TODO(r): exit?
}
......@@ -399,7 +399,7 @@ func serveHTTP(c *http.Conn, req *http.Request) {
io.WriteString(c, "405 must CONNECT to " + rpcPath + "\n");
return;
}
conn, buf, err := c.Hijack();
conn, _, err := c.Hijack();
if err != nil {
log.Stderr("rpc hijacking ", c.RemoteAddr, ": ", err.String());
return;
......
......@@ -60,7 +60,7 @@ var itob64tests = []itob64Test {
}
func TestItoa(t *testing.T) {
for i, test := range itob64tests {
for _, test := range itob64tests {
s := Itob64(test.in, test.base);
if s != test.out {
t.Errorf("Itob64(%v, %v) = %v want %v\n",
......@@ -140,7 +140,7 @@ var uitob64tests = []uitob64Test {
}
func TestUitoa(t *testing.T) {
for i, test := range uitob64tests {
for _, test := range uitob64tests {
s := Uitob64(test.in, test.base);
if s != test.out {
t.Errorf("Uitob64(%v, %v) = %v want %v\n",
......
......@@ -157,7 +157,7 @@ func Map(mapping func(rune int) int, s string) string {
maxbytes := len(s); // length of b
nbytes := 0; // number of bytes encoded in b
b := make([]byte, maxbytes);
for i, c := range s {
for _, c := range s {
rune := mapping(c);
wid := 1;
if rune >= utf8.RuneSelf {
......@@ -196,8 +196,8 @@ func Title(s string) string {
// removed, as defined by Unicode.
func TrimSpace(s string) string {
start, end := 0, len(s);
for wid := 0; start < end; start += wid {
wid = 1;
for start < end {
wid := 1;
rune := int(s[start]);
if rune >= utf8.RuneSelf {
rune, wid = utf8.DecodeRuneInString(s[start:end])
......@@ -205,9 +205,10 @@ func TrimSpace(s string) string {
if !unicode.IsSpace(rune) {
break;
}
start += wid;
}
for wid := 0; start < end; end -= wid {
wid = 1;
for start < end {
wid := 1;
rune := int(s[end-1]);
if rune >= utf8.RuneSelf {
// Back up carefully looking for beginning of rune. Mustn't pass start.
......@@ -221,6 +222,7 @@ func TrimSpace(s string) string {
if !unicode.IsSpace(rune) {
break;
}
end -= wid;
}
return s[start:end];
}
......
......@@ -66,7 +66,7 @@ var lastIndexTests = []IndexTest {
// Execute f on each test case. funcName should be the name of f; it's used
// in failure reports.
func runIndexTests(t *testing.T, f func(s, sep string) int, funcName string, testCases []IndexTest) {
for i,test := range testCases {
for _, test := range testCases {
actual := f(test.s, test.sep);
if actual != test.out {
t.Errorf("%s(%q,%q) = %v; want %v", funcName, test.s, test.sep, actual, test.out);
......@@ -149,7 +149,7 @@ type StringTest struct {
// Execute f on each test case. funcName should be the name of f; it's used
// in failure reports.
func runStringTests(t *testing.T, f func(string) string, funcName string, testCases []StringTest) {
for i, tc := range testCases {
for _, tc := range testCases {
actual := f(tc.in);
if actual != tc.out {
t.Errorf("%s(%q) = %q; want %q", funcName, tc.in, actual, tc.out);
......@@ -237,8 +237,8 @@ func equal(m string, s1, s2 string, t *testing.T) bool {
if i > len(e2) {
break
}
r1, w := utf8.DecodeRuneInString(c1);
r2, w := utf8.DecodeRuneInString(e2[i]);
r1, _ := utf8.DecodeRuneInString(c1);
r2, _ := utf8.DecodeRuneInString(e2[i]);
if r1 != r2 {
t.Errorf("%s diff at %d: U+%04X U+%04X", m, i, r1, r2)
}
......
......@@ -85,7 +85,7 @@ func SetNonblock(fd int, nonblocking bool) (errno int) {
} else {
flag &= ^O_NONBLOCK;
}
flag, err = fcntl(fd, F_SETFL, flag);
_, err = fcntl(fd, F_SETFL, flag);
return err;
}
......@@ -133,7 +133,7 @@ func forkAndExecInChild(argv0 *byte, argv []*byte, envv []*byte, traceme bool, d
// Enable tracing if requested.
if traceme {
r1, r2, err1 = RawSyscall(SYS_PTRACE, uintptr(_PTRACE_TRACEME), 0, 0);
_, _, err1 = RawSyscall(SYS_PTRACE, uintptr(_PTRACE_TRACEME), 0, 0);
if err1 != 0 {
goto childerror;
}
......@@ -141,7 +141,7 @@ func forkAndExecInChild(argv0 *byte, argv []*byte, envv []*byte, traceme bool, d
// Chdir
if dir != nil {
r1, r2, err1 = RawSyscall(SYS_CHDIR, uintptr(unsafe.Pointer(dir)), 0, 0);
_, _, err1 = RawSyscall(SYS_CHDIR, uintptr(unsafe.Pointer(dir)), 0, 0);
if err1 != 0 {
goto childerror;
}
......@@ -151,7 +151,7 @@ func forkAndExecInChild(argv0 *byte, argv []*byte, envv []*byte, traceme bool, d
// so that pass 2 won't stomp on an fd it needs later.
nextfd = int(len(fd));
if pipe < nextfd {
r1, r2, err1 = RawSyscall(SYS_DUP2, uintptr(pipe), uintptr(nextfd), 0);
_, _, err1 = RawSyscall(SYS_DUP2, uintptr(pipe), uintptr(nextfd), 0);
if err1 != 0 {
goto childerror;
}
......@@ -161,7 +161,7 @@ func forkAndExecInChild(argv0 *byte, argv []*byte, envv []*byte, traceme bool, d
}
for i = 0; i < len(fd); i++ {
if fd[i] >= 0 && fd[i] < int(i) {
r1, r2, err1 = RawSyscall(SYS_DUP2, uintptr(fd[i]), uintptr(nextfd), 0);
_, _, err1 = RawSyscall(SYS_DUP2, uintptr(fd[i]), uintptr(nextfd), 0);
if err1 != 0 {
goto childerror;
}
......@@ -183,7 +183,7 @@ func forkAndExecInChild(argv0 *byte, argv []*byte, envv []*byte, traceme bool, d
if fd[i] == int(i) {
// dup2(i, i) won't clear close-on-exec flag on Linux,
// probably not elsewhere either.
r1, r2, err1 = RawSyscall(SYS_FCNTL, uintptr(fd[i]), F_SETFD, 0);
_, _, err1 = RawSyscall(SYS_FCNTL, uintptr(fd[i]), F_SETFD, 0);
if err1 != 0 {
goto childerror;
}
......@@ -191,7 +191,7 @@ func forkAndExecInChild(argv0 *byte, argv []*byte, envv []*byte, traceme bool, d
}
// The new fd is created NOT close-on-exec,
// which is exactly what we want.
r1, r2, err1 = RawSyscall(SYS_DUP2, uintptr(fd[i]), uintptr(i), 0);
_, _, err1 = RawSyscall(SYS_DUP2, uintptr(fd[i]), uintptr(i), 0);
if err1 != 0 {
goto childerror;
}
......@@ -206,7 +206,7 @@ func forkAndExecInChild(argv0 *byte, argv []*byte, envv []*byte, traceme bool, d
}
// Time to exec.
r1, r2, err1 = RawSyscall(SYS_EXECVE,
_, _, err1 = RawSyscall(SYS_EXECVE,
uintptr(unsafe.Pointer(argv0)),
uintptr(unsafe.Pointer(&argv[0])),
uintptr(unsafe.Pointer(&envv[0])));
......@@ -287,9 +287,9 @@ func forkExec(argv0 string, argv []string, envv []string, traceme bool, dir stri
// Child failed; wait for it to exit, to make sure
// the zombies don't accumulate.
pid1, err1 := Wait4(pid, &wstatus, 0, nil);
_, err1 := Wait4(pid, &wstatus, 0, nil);
for err1 == EINTR {
pid1, err1 = Wait4(pid, &wstatus, 0, nil);
_, err1 = Wait4(pid, &wstatus, 0, nil);
}
return 0, err
}
......@@ -314,7 +314,7 @@ func PtraceForkExec(argv0 string, argv []string, envv []string, dir string, fd [
// Ordinary exec.
func Exec(argv0 string, argv []string, envv []string) (err int) {
r1, r2, err1 := RawSyscall(SYS_EXECVE,
_, _, err1 := RawSyscall(SYS_EXECVE,
uintptr(unsafe.Pointer(StringBytePtr(argv0))),
uintptr(unsafe.Pointer(&StringArrayPtr(argv)[0])),
uintptr(unsafe.Pointer(&StringArrayPtr(envv)[0])));
......
......@@ -297,7 +297,7 @@ func TestAll(t *testing.T) {
s.false = false;
var buf bytes.Buffer;
for i, test := range tests {
for _, test := range tests {
buf.Reset();
tmpl, err := Parse(test.in, formatters);
if err != nil {
......
......@@ -13,7 +13,7 @@ import (
// Seconds reports the number of seconds since the Unix epoch,
// January 1, 1970 00:00:00 UTC.
func Seconds() int64 {
sec, nsec, err := os.Time();
sec, _, err := os.Time();
if err != nil {
panic("time: os.Time: ", err.String());
}
......
......@@ -132,7 +132,7 @@ func parseinfo(bytes []byte) (zt []zonetime, ok bool) {
abbrev := d.read(n[NChar]);
// Leap-second time pairs
leapdata := data{d.read(n[NLeap]*8), false};
d.read(n[NLeap]*8);
// Whether tx times associated with local time types
// are specified as standard time or wall time.
......
......@@ -104,12 +104,12 @@ var testLetter = []int {
}
func TestDigit(t *testing.T) {
for i, r := range testDigit {
for _, r := range testDigit {
if !IsDigit(r) {
t.Errorf("IsDigit(U+%04X) = false, want true\n", r);
}
}
for i, r := range testLetter {
for _, r := range testLetter {
if IsDigit(r) {
t.Errorf("IsDigit(U+%04X) = true, want false\n", r);
}
......
......@@ -54,7 +54,7 @@ const (
func Is(ranges []Range, rune int) bool {
// common case: rune is ASCII or Latin-1
if rune < 0x100 {
for i, r := range ranges {
for _, r := range ranges {
if rune > r.Hi {
continue;
}
......@@ -150,7 +150,7 @@ func To(_case int, rune int) int {
// The characters at even offsets from the beginning of the
// sequence are upper case; the ones at odd offsets are lower.
// The correct mapping can be done by clearing or setting the low
// bit in the sequence offset.
// bit in the sequence offset.
// The constants UpperCase and TitleCase are even while LowerCase
// is odd so we take the low bit from _case.
return r.Lo + ((rune - r.Lo)&^1 | _case&1);
......
......@@ -214,17 +214,17 @@ var caseTest = []caseT {
}
func TestIsLetter(t *testing.T) {
for i, r := range upperTest {
for _, r := range upperTest {
if !IsLetter(r) {
t.Errorf("IsLetter(U+%04X) = false, want true\n", r);
}
}
for i, r := range letterTest {
for _, r := range letterTest {
if !IsLetter(r) {
t.Errorf("IsLetter(U+%04X) = false, want true\n", r);
}
}
for i, r := range notletterTest {
for _, r := range notletterTest {
if IsLetter(r) {
t.Errorf("IsLetter(U+%04X) = true, want false\n", r);
}
......@@ -232,17 +232,17 @@ func TestIsLetter(t *testing.T) {
}
func TestIsUpper(t *testing.T) {
for i, r := range upperTest {
for _, r := range upperTest {
if !IsUpper(r) {
t.Errorf("IsUpper(U+%04X) = false, want true\n", r);
}
}
for i, r := range notupperTest {
for _, r := range notupperTest {
if IsUpper(r) {
t.Errorf("IsUpper(U+%04X) = true, want false\n", r);
}
}
for i, r := range notletterTest {
for _, r := range notletterTest {
if IsUpper(r) {
t.Errorf("IsUpper(U+%04X) = true, want false\n", r);
}
......@@ -262,7 +262,7 @@ func caseString(c int) string {
}
func TestTo(t *testing.T) {
for i, c := range caseTest {
for _, c := range caseTest {
r := To(c.cas, c.in);
if c.out != r {
t.Errorf("To(U+%04X, %s) = U+%04X want U+%04X\n", c.in, caseString(c.cas), r, c.out);
......@@ -271,7 +271,7 @@ func TestTo(t *testing.T) {
}
func TestToUpperCase(t *testing.T) {
for i, c := range caseTest {
for _, c := range caseTest {
if c.cas != UpperCase {
continue
}
......@@ -283,7 +283,7 @@ func TestToUpperCase(t *testing.T) {
}
func TestToLowerCase(t *testing.T) {
for i, c := range caseTest {
for _, c := range caseTest {
if c.cas != LowerCase {
continue
}
......@@ -295,7 +295,7 @@ func TestToLowerCase(t *testing.T) {
}
func TestToTitleCase(t *testing.T) {
for i, c := range caseTest {
for _, c := range caseTest {
if c.cas != TitleCase {
continue
}
......
......@@ -174,7 +174,7 @@ func TestScripts(t *testing.T) {
for k := range Scripts {
notTested[k] = true
}
for i, test := range inTest {
for _, test := range inTest {
if _, ok := Scripts[test.script]; !ok {
t.Fatal(test.script, "not a known script")
}
......@@ -183,7 +183,7 @@ func TestScripts(t *testing.T) {
}
notTested[test.script] = false, false
}
for i, test := range outTest {
for _, test := range outTest {
if Is(Scripts[test.script], test.rune) {
t.Errorf("IsScript(%#x, %s) = true, want false\n", test.rune, test.script);
}
......@@ -198,7 +198,7 @@ func TestCategories(t *testing.T) {
for k := range Categories {
notTested[k] = true
}
for i, test := range inCategoryTest {
for _, test := range inCategoryTest {
if _, ok := Categories[test.script]; !ok {
t.Fatal(test.script, "not a known category")
}
......@@ -217,7 +217,7 @@ func TestProperties(t *testing.T) {
for k := range Properties {
notTested[k] = true
}
for i, test := range inPropTest {
for _, test := range inPropTest {
if _, ok := Properties[test.script]; !ok {
t.Fatal(test.script, "not a known prop")
}
......
......@@ -187,13 +187,13 @@ func decodeRuneInStringInternal(s string) (rune, size int, short bool) {
// FullRune reports whether the bytes in p begin with a full UTF-8 encoding of a rune.
// An invalid encoding is considered a full Rune since it will convert as a width-1 error rune.
func FullRune(p []byte) bool {
rune, size, short := decodeRuneInternal(p);
_, _, short := decodeRuneInternal(p);
return !short
}
// FullRuneInString is like FullRune but its input is a string.
func FullRuneInString(s string) bool {
rune, size, short := decodeRuneInStringInternal(s);
_, _, short := decodeRuneInStringInternal(s);
return !short
}
......@@ -265,7 +265,7 @@ func RuneCount(p []byte) int {
if p[i] < RuneSelf {
i++;
} else {
rune, size := DecodeRune(p[i:len(p)]);
_, size := DecodeRune(p[i:len(p)]);
i += size;
}
}
......@@ -276,12 +276,12 @@ func RuneCount(p []byte) int {
func RuneCountInString(s string) int {
ei := len(s);
i := 0;
n := 0;
var n int;
for n = 0; i < ei; n++ {
if s[i] < RuneSelf {
i++;
} else {
rune, size, short := decodeRuneInStringInternal(s[i:ei]);
_, size, _ := decodeRuneInStringInternal(s[i:ei]);
i += size;
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment