]> Cypherpunks repositories - gostls13.git/log
gostls13.git
11 years agonet/http: add another Hijacker test
Brad Fitzpatrick [Wed, 22 May 2013 01:43:28 +0000 (18:43 -0700)]
net/http: add another Hijacker test

R=dsymonds
CC=gobot, golang-dev
https://golang.org/cl/9570043

11 years agobufio: reuse Writer buffers after Flush
Brad Fitzpatrick [Tue, 21 May 2013 22:51:49 +0000 (15:51 -0700)]
bufio: reuse Writer buffers after Flush

A bufio.Writer.Flush marks the usual end of a Writer's
life. Recycle its internal buffer on those explicit flushes,
but not on normal, as-needed internal flushes.

benchmark               old ns/op    new ns/op    delta
BenchmarkWriterEmpty         1959          727  -62.89%

benchmark              old allocs   new allocs    delta
BenchmarkWriterEmpty            2            1  -50.00%

benchmark               old bytes    new bytes    delta
BenchmarkWriterEmpty         4215           83  -98.03%

R=gri, iant
CC=gobot, golang-dev, voidlogic7
https://golang.org/cl/9459044

11 years agonet/http: don't send Accept-Encoding on HEAD requests
Brad Fitzpatrick [Tue, 21 May 2013 22:21:30 +0000 (15:21 -0700)]
net/http: don't send Accept-Encoding on HEAD requests

Works around a bug in nginx: http://trac.nginx.org/nginx/ticket/358

Fixes #5522

R=iant
CC=gobot, golang-dev
https://golang.org/cl/9627043

11 years agodatabase/sql: remove extra RemoveDep call
Brad Fitzpatrick [Tue, 21 May 2013 21:58:08 +0000 (14:58 -0700)]
database/sql: remove extra RemoveDep call

This should have been removed in 45c12efb4635. Not a correctness
issue, but unnecessary work.

This CL also adds paranoia checks in removeDep so this doesn't
happen again.

Fixes #5502

R=adg
CC=gobot, golang-dev, google
https://golang.org/cl/9543043

11 years agotime: remove Time.FormatAppend
Brad Fitzpatrick [Tue, 21 May 2013 21:32:09 +0000 (14:32 -0700)]
time: remove Time.FormatAppend

undo CL 8478044 / 0d28fd55e721

Lack of consensus.

««« original CL description
time: add Time.FormatAppend

This is a version of Time.Format that doesn't require allocation.

Fixes #5192
Update #5195

R=r
CC=gobot, golang-dev
https://golang.org/cl/8478044
»»»

R=r
CC=golang-dev
https://golang.org/cl/9462049

11 years agocmd/gc: fix confusing error with broken types and defer/go
Daniel Morsing [Tue, 21 May 2013 16:35:47 +0000 (18:35 +0200)]
cmd/gc: fix confusing error with broken types and defer/go

Fixes #5172.

R=golang-dev, bradfitz, r
CC=golang-dev
https://golang.org/cl/9614044

11 years agocmd/go: fix LDFLAGS handling, enable misc/cgo/testso on Darwin
Shenghou Ma [Tue, 21 May 2013 16:32:03 +0000 (00:32 +0800)]
cmd/go: fix LDFLAGS handling, enable misc/cgo/testso on Darwin
Fixes #5479.

R=golang-dev, dave
CC=golang-dev
https://golang.org/cl/9416047

11 years agoapi: update next.txt
Brad Fitzpatrick [Tue, 21 May 2013 16:11:11 +0000 (09:11 -0700)]
api: update next.txt

R=minux.ma
CC=golang-dev
https://golang.org/cl/9459047

11 years agocodereview: add khr as a person
Brad Fitzpatrick [Tue, 21 May 2013 16:02:30 +0000 (09:02 -0700)]
codereview: add khr as a person

R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/9459046

11 years agocrypto/tls: don't send NPN extension if NextProtos is not set.
Adam Langley [Tue, 21 May 2013 14:47:31 +0000 (10:47 -0400)]
crypto/tls: don't send NPN extension if NextProtos is not set.

This isn't clearly a bug on Go's part, but it triggers a bug in Firefox
which means that crypto/tls and net/http cannot be wired up together
unless NextProtos includes "http/1.1". When net/http sets up the
tls.Config, it does this and so works fine. But anyone setting up the
tls.Config themselves will hit the Firefox bug.

Fixes #5445.

R=golang-dev, bradfitz, r
CC=golang-dev
https://golang.org/cl/9539045

11 years agocmd/api: add more platforms
Shenghou Ma [Tue, 21 May 2013 13:47:32 +0000 (21:47 +0800)]
cmd/api: add more platforms
as OpenBSD lacks 4 errno constants, api/go1.txt is updated so that
api check won't fail.

R=golang-dev, iant, bradfitz, r
CC=golang-dev
https://golang.org/cl/9149045

11 years agonet/http: use WriteString directly when possible
Brad Fitzpatrick [Tue, 21 May 2013 02:26:26 +0000 (19:26 -0700)]
net/http: use WriteString directly when possible

Several places used io.WriteString unnecessarily when the
static type already implemented WriteString. No need to
check for it at runtime.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9608043

11 years agocmd/gc: clear n->list of OFOR range loop after walk.
Rémy Oudompheng [Mon, 20 May 2013 21:45:22 +0000 (23:45 +0200)]
cmd/gc: clear n->list of OFOR range loop after walk.

It contains the LHS of the range clause and gets
instrumented by racewalk, but it doesn't have any meaning.

Fixes #5446.

R=golang-dev, dvyukov, daniel.morsing, r
CC=golang-dev
https://golang.org/cl/9560044

11 years agocmd/gc: eliminate a useless bounds check in inlined append().
Rémy Oudompheng [Mon, 20 May 2013 21:19:41 +0000 (23:19 +0200)]
cmd/gc: eliminate a useless bounds check in inlined append().

R=golang-dev, daniel.morsing, r
CC=golang-dev
https://golang.org/cl/9358043

11 years agospec: removed old or invalid TODOs
Robert Griesemer [Mon, 20 May 2013 21:01:07 +0000 (14:01 -0700)]
spec: removed old or invalid TODOs

Several old TODOs are either resolved now (e.g. when is a return
needed), or are from a time the language wasn't frozen (^ for uints
only). Consolidated the others.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9599044

11 years agospec: fix language about "range" clause
Robert Griesemer [Mon, 20 May 2013 20:27:53 +0000 (13:27 -0700)]
spec: fix language about "range" clause

Fixes #5434.

R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/9595044

11 years agomisc/dashboard/builder: handle Plan 9 in defaultSuffix()
Shenghou Ma [Mon, 20 May 2013 19:22:52 +0000 (03:22 +0800)]
misc/dashboard/builder: handle Plan 9 in defaultSuffix()

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/9495045

11 years agocrypto/x509: provide better error messages for X.509 verify failures.
Adam Langley [Mon, 20 May 2013 18:20:26 +0000 (14:20 -0400)]
crypto/x509: provide better error messages for X.509 verify failures.

Failures caused by errors like invalid signatures or missing hash
functions cause rather generic, unhelpful error messages because no
trust chain can be constructed: "x509: certificate signed by unknown
authority."

With this change, authority errors may contain the reason why an
arbitary candidate step in the chain was rejected. For example, in the
event of a missing hash function the error looks like:

x509: certificate signed by unknown authority (possibly because of
"crypto/x509: cannot verify signature: algorithm unimplemented" while
trying to verify candidate authority certificate 'Thawte SGC CA')

Fixes 5058.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9104051

11 years agotest: do not run the test that relies on precise GC on 32-bits
Dmitriy Vyukov [Mon, 20 May 2013 17:53:16 +0000 (21:53 +0400)]
test: do not run the test that relies on precise GC on 32-bits
Currently most of the 32-bit builder are broken.
Fixes #5516.

R=golang-dev, dave, iant
CC=golang-dev
https://golang.org/cl/9573043

11 years agonet/http: simplify transfer body; reduces allocations too
Brad Fitzpatrick [Mon, 20 May 2013 14:23:59 +0000 (07:23 -0700)]
net/http: simplify transfer body; reduces allocations too

benchmark                                   old ns/op    new ns/op    delta
BenchmarkServerFakeConnNoKeepAlive              14431        14247   -1.28%
BenchmarkServerFakeConnWithKeepAlive            11618        11357   -2.25%
BenchmarkServerFakeConnWithKeepAliveLite         6735         6427   -4.57%
BenchmarkServerHandlerTypeLen                    8842         8740   -1.15%
BenchmarkServerHandlerNoLen                      8001         7828   -2.16%
BenchmarkServerHandlerNoType                     8270         8227   -0.52%
BenchmarkServerHandlerNoHeader                   6148         5920   -3.71%

benchmark                                  old allocs   new allocs    delta
BenchmarkServerFakeConnNoKeepAlive                 30           29   -3.33%
BenchmarkServerFakeConnWithKeepAlive               25           24   -4.00%
BenchmarkServerFakeConnWithKeepAliveLite           10            9  -10.00%
BenchmarkServerHandlerTypeLen                      18           17   -5.56%
BenchmarkServerHandlerNoLen                        15           14   -6.67%
BenchmarkServerHandlerNoType                       16           15   -6.25%
BenchmarkServerHandlerNoHeader                     10            9  -10.00%

benchmark                                   old bytes    new bytes    delta
BenchmarkServerFakeConnNoKeepAlive               2557         2492   -2.54%
BenchmarkServerFakeConnWithKeepAlive             2260         2194   -2.92%
BenchmarkServerFakeConnWithKeepAliveLite         1092         1026   -6.04%
BenchmarkServerHandlerTypeLen                    1941         1875   -3.40%
BenchmarkServerHandlerNoLen                      1898         1832   -3.48%
BenchmarkServerHandlerNoType                     1906         1840   -3.46%
BenchmarkServerHandlerNoHeader                   1092         1026   -6.04%

Update #5195

R=golang-dev, daniel.morsing
CC=golang-dev
https://golang.org/cl/9492044

11 years agosyscall: prefer PATH environment variable in bootstrap scripts
Mikio Hara [Mon, 20 May 2013 14:18:52 +0000 (23:18 +0900)]
syscall: prefer PATH environment variable in bootstrap scripts

R=golang-dev, dave, iant
CC=golang-dev
https://golang.org/cl/9575043

11 years agoruntime: integrated network poller for freebsd/amd64,386, openbsd/amd64,386
Mikio Hara [Mon, 20 May 2013 10:25:32 +0000 (19:25 +0900)]
runtime: integrated network poller for freebsd/amd64,386, openbsd/amd64,386

Update #5199

R=golang-dev, dvyukov
CC=golang-dev
https://golang.org/cl/8825043

11 years agonet: move system common global variables into fd_unix.go
Alex Brainman [Mon, 20 May 2013 05:23:45 +0000 (15:23 +1000)]
net: move system common global variables into fd_unix.go

R=golang-dev, bradfitz
CC=dvyukov, golang-dev, mikioh.mikioh
https://golang.org/cl/9495044

11 years agoruntime: zeroize g->fnstart to not prevent GC of the closure
Dmitriy Vyukov [Mon, 20 May 2013 04:17:21 +0000 (08:17 +0400)]
runtime: zeroize g->fnstart to not prevent GC of the closure
Fixes #5493.

R=golang-dev, minux.ma, iant
CC=golang-dev
https://golang.org/cl/9557043

11 years agonet/http: fewer allocations in the server path
Brad Fitzpatrick [Mon, 20 May 2013 03:15:40 +0000 (20:15 -0700)]
net/http: fewer allocations in the server path

Don't allocate for the Date or Content-Length headers.
A custom Date header formatter replaces use of time.Format.

benchmark                                   old ns/op    new ns/op    delta
BenchmarkClientServer                           67791        64424   -4.97%
BenchmarkClientServerParallel4                  62956        58533   -7.03%
BenchmarkClientServerParallel64                 62043        54789  -11.69%
BenchmarkServer                                254609       229060  -10.03%
BenchmarkServerFakeConnNoKeepAlive              17038        16316   -4.24%
BenchmarkServerFakeConnWithKeepAlive            14184        13226   -6.75%
BenchmarkServerFakeConnWithKeepAliveLite         8591         7532  -12.33%
BenchmarkServerHandlerTypeLen                   10750         9961   -7.34%
BenchmarkServerHandlerNoLen                      9535         8935   -6.29%
BenchmarkServerHandlerNoType                     9858         9362   -5.03%
BenchmarkServerHandlerNoHeader                   7754         6856  -11.58%

benchmark                                  old allocs   new allocs    delta
BenchmarkClientServer                              68           66   -2.94%
BenchmarkClientServerParallel4                     68           66   -2.94%
BenchmarkClientServerParallel64                    68           66   -2.94%
BenchmarkServer                                    21           19   -9.52%
BenchmarkServerFakeConnNoKeepAlive                 32           30   -6.25%
BenchmarkServerFakeConnWithKeepAlive               27           25   -7.41%
BenchmarkServerFakeConnWithKeepAliveLite           12           10  -16.67%
BenchmarkServerHandlerTypeLen                      19           18   -5.26%
BenchmarkServerHandlerNoLen                        17           15  -11.76%
BenchmarkServerHandlerNoType                       17           16   -5.88%
BenchmarkServerHandlerNoHeader                     12           10  -16.67%

Update #5195

R=nigeltao
CC=golang-dev
https://golang.org/cl/9432046

11 years agoruntime: change PollDesc.fd from int32 to uintptr
Alex Brainman [Mon, 20 May 2013 02:55:50 +0000 (12:55 +1000)]
runtime: change PollDesc.fd from int32 to uintptr

This is in preparation for netpoll windows version.

R=golang-dev, bradfitz
CC=dvyukov, golang-dev, mikioh.mikioh
https://golang.org/cl/9569043

11 years agoruntime: properly set G status after syscall
Dmitriy Vyukov [Sun, 19 May 2013 15:35:09 +0000 (19:35 +0400)]
runtime: properly set G status after syscall

R=golang-dev, r, dave
CC=golang-dev
https://golang.org/cl/9307045

11 years agomisc/dashboard: add go.tools to list of subrepos
Dave Cheney [Sun, 19 May 2013 00:04:23 +0000 (10:04 +1000)]
misc/dashboard: add go.tools to list of subrepos

R=r, adg, dsymonds
CC=golang-dev
https://golang.org/cl/9535044

11 years agoruntime, cmd/gc: clean up function protoypes
Anthony Martin [Sat, 18 May 2013 22:49:23 +0000 (15:49 -0700)]
runtime, cmd/gc: clean up function protoypes

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/8652043

11 years agoruntime: mark usleep as NOSPLIT on Plan 9
Anthony Martin [Sat, 18 May 2013 22:47:49 +0000 (15:47 -0700)]
runtime: mark usleep as NOSPLIT on Plan 9

Usleep is called from lockextra, also marked NOSPLIT.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9258043

11 years agoruntime: fix newproc debugging print
Anthony Martin [Sat, 18 May 2013 22:47:15 +0000 (15:47 -0700)]
runtime: fix newproc debugging print

R=golang-dev, remyoudompheng, r
CC=golang-dev
https://golang.org/cl/9249044

11 years agocompress/flate: faster version of forwardCopy
Keith Randall [Sat, 18 May 2013 22:28:27 +0000 (15:28 -0700)]
compress/flate: faster version of forwardCopy

benchmark                           old ns/op    new ns/op    delta
BenchmarkDecodeDigitsSpeed1e4          197767       203490   +2.89%
BenchmarkDecodeDigitsSpeed1e5         1873969      1912761   +2.07%
BenchmarkDecodeDigitsSpeed1e6        18922760     19021056   +0.52%
BenchmarkDecodeDigitsDefault1e4        194975       197054   +1.07%
BenchmarkDecodeDigitsDefault1e5       1704262      1719988   +0.92%
BenchmarkDecodeDigitsDefault1e6      16618354     16351957   -1.60%
BenchmarkDecodeDigitsCompress1e4       195281       194626   -0.34%
BenchmarkDecodeDigitsCompress1e5      1694364      1702372   +0.47%
BenchmarkDecodeDigitsCompress1e6     16463347     16492126   +0.17%
BenchmarkDecodeTwainSpeed1e4           200653       200127   -0.26%
BenchmarkDecodeTwainSpeed1e5          1861385      1759632   -5.47%
BenchmarkDecodeTwainSpeed1e6         18255769     17186679   -5.86%
BenchmarkDecodeTwainDefault1e4         189080       185157   -2.07%
BenchmarkDecodeTwainDefault1e5        1559222      1461465   -6.27%
BenchmarkDecodeTwainDefault1e6       14792125     13879051   -6.17%
BenchmarkDecodeTwainCompress1e4        188881       185151   -1.97%
BenchmarkDecodeTwainCompress1e5       1537031      1456945   -5.21%
BenchmarkDecodeTwainCompress1e6      14805972     13405094   -9.46%
BenchmarkPaeth                          4            4   -0.89%
BenchmarkDecodeGray                964679       937244   -2.84%
BenchmarkDecodeNRGBAGradient      3753769      3646416   -2.86%
BenchmarkDecodeNRGBAOpaque        3165856      2981300   -5.83%
BenchmarkDecodePaletted            713950       691984   -3.08%
BenchmarkDecodeRGB                3051718      2924260   -4.18%

R=nigeltao, bradfitz
CC=golang-dev, raph
https://golang.org/cl/9425046

11 years agocmd/go: Update documentation of go run to match current behaviour.
Dominik Honnef [Sat, 18 May 2013 11:22:30 +0000 (19:22 +0800)]
cmd/go: Update documentation of go run to match current behaviour.

Fixes #5511.

R=golang-dev, minux.ma
CC=golang-dev
https://golang.org/cl/9530043

11 years agobufio: make Reader buffer transient
Brad Fitzpatrick [Fri, 17 May 2013 22:16:06 +0000 (15:16 -0700)]
bufio: make Reader buffer transient

Share garbage between different bufio Readers. When a Reader
has zero buffered data, put its buffer into a pool.

This acknowledges that most bufio.Readers eventually get
read to completion, and their buffers are then no longer
needed.

benchmark               old ns/op    new ns/op    delta
BenchmarkReaderEmpty         2993         1058  -64.65%

benchmark              old allocs   new allocs    delta
BenchmarkReaderEmpty            3            2  -33.33%

benchmark               old bytes    new bytes    delta
BenchmarkReaderEmpty         4278          133  -96.89%

Update #5100

R=r
CC=adg, dvyukov, gobot, golang-dev, rogpeppe
https://golang.org/cl/8819049

12 years agocmd/vet: delete; it now lives in the go.tools subrepo
Rob Pike [Fri, 17 May 2013 20:53:22 +0000 (13:53 -0700)]
cmd/vet: delete; it now lives in the go.tools subrepo

R=golang-dev, dsymonds, rsc, iant, dave
CC=golang-dev
https://golang.org/cl/9496043

12 years agoruntime: faster x86 memmove (a.k.a. built-in copy())
Keith Randall [Fri, 17 May 2013 19:53:49 +0000 (12:53 -0700)]
runtime: faster x86 memmove (a.k.a. built-in copy())

REP instructions have a high startup cost, so we handle small
sizes with some straightline code.  The REP MOVSx instructions
are really fast for large sizes.  The cutover is approximately
1K.  We implement up to 128/256 because that is the maximum
SSE register load (loading all data into registers before any
stores lets us ignore copy direction).

(on a Sandy Bridge E5-1650 @ 3.20GHz)
benchmark               old ns/op    new ns/op    delta
BenchmarkMemmove0               3            3   +0.86%
BenchmarkMemmove1               5            5   +5.40%
BenchmarkMemmove2              18            8  -56.84%
BenchmarkMemmove3              18            7  -58.45%
BenchmarkMemmove4              36            7  -78.63%
BenchmarkMemmove5              36            8  -77.91%
BenchmarkMemmove6              36            8  -77.76%
BenchmarkMemmove7              36            8  -77.82%
BenchmarkMemmove8              18            8  -56.33%
BenchmarkMemmove9              18            7  -58.34%
BenchmarkMemmove10             18            7  -58.34%
BenchmarkMemmove11             18            7  -58.45%
BenchmarkMemmove12             36            7  -78.51%
BenchmarkMemmove13             36            7  -78.48%
BenchmarkMemmove14             36            7  -78.56%
BenchmarkMemmove15             36            7  -78.56%
BenchmarkMemmove16             18            7  -58.24%
BenchmarkMemmove32             18            8  -54.33%
BenchmarkMemmove64             18            8  -53.37%
BenchmarkMemmove128            20            9  -55.93%
BenchmarkMemmove256            25           11  -55.16%
BenchmarkMemmove512            33           33   -1.19%
BenchmarkMemmove1024           43           44   +2.06%
BenchmarkMemmove2048           61           61   +0.16%
BenchmarkMemmove4096           95           95   +0.00%

R=golang-dev, bradfitz, remyoudompheng, khr, iant, dominik.honnef
CC=golang-dev
https://golang.org/cl/9038048

12 years agomisc/cgo/test: deflake TestParallelSleep once more
Shenghou Ma [Fri, 17 May 2013 18:55:44 +0000 (02:55 +0800)]
misc/cgo/test: deflake TestParallelSleep once more
Fixes #5480.

R=golang-dev, iant
CC=golang-dev
https://golang.org/cl/9475043

12 years agocmd/ld: emit .tbss section when doing dynamic internal linking
Shenghou Ma [Fri, 17 May 2013 18:41:49 +0000 (02:41 +0800)]
cmd/ld: emit .tbss section when doing dynamic internal linking
Fixes #5200.

R=iant, dave
CC=golang-dev
https://golang.org/cl/9383043

12 years agoos: clarify windows read console code
Alex Brainman [Fri, 17 May 2013 07:26:44 +0000 (17:26 +1000)]
os: clarify windows read console code

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9458043

12 years agoruntime: revert 3c2cddfbdaec
Alex Brainman [Fri, 17 May 2013 04:23:29 +0000 (14:23 +1000)]
runtime: revert 3c2cddfbdaec

It appears, syscall.NewCallback still
uses heap to store executable code.

R=golang-dev, khr
CC=golang-dev
https://golang.org/cl/9060046

12 years agoruntime: do not mark os memory as executable on windows
Alex Brainman [Fri, 17 May 2013 03:37:30 +0000 (13:37 +1000)]
runtime: do not mark os memory as executable on windows

R=golang-dev, bradfitz, khr
CC=golang-dev
https://golang.org/cl/9235046

12 years agoruntime: fix scanning of not started goroutines
Carl Shapiro [Thu, 16 May 2013 17:42:39 +0000 (10:42 -0700)]
runtime: fix scanning of not started goroutines

The stack scanner for not started goroutines ignored the arguments
area when its size was unknown.  With this change, the distance
between the stack pointer and the stack base will be used instead.

Fixes #5486

R=golang-dev, bradfitz, iant, dvyukov
CC=golang-dev
https://golang.org/cl/9440043

12 years agocrypto/tls: fix flakey test.
Adam Langley [Thu, 16 May 2013 16:29:23 +0000 (12:29 -0400)]
crypto/tls: fix flakey test.

A test added in b37d2fdcc4d9 didn't work with some values of GOMAXPROCS
because the defer statements were in the wrong order: the Pipe could be
closed before the TLS Client was.

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/9187047

12 years agoos: use small buffer when reading from windows console
Alex Brainman [Thu, 16 May 2013 07:20:13 +0000 (17:20 +1000)]
os: use small buffer when reading from windows console

Fixes #5481.

R=golang-dev, dominik.honnef, bradfitz
CC=golang-dev
https://golang.org/cl/9437044

12 years agocmd/gc: repair make(T) in export data for inlining.
Rémy Oudompheng [Thu, 16 May 2013 07:01:43 +0000 (09:01 +0200)]
cmd/gc: repair make(T) in export data for inlining.

When T was an unexported type it could be forgotten.

Fixes #5470.

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/9303050

12 years agotime: add Time.FormatAppend
Brad Fitzpatrick [Thu, 16 May 2013 00:23:40 +0000 (17:23 -0700)]
time: add Time.FormatAppend

This is a version of Time.Format that doesn't require allocation.

Fixes #5192
Update #5195

R=r
CC=gobot, golang-dev
https://golang.org/cl/8478044

12 years agoreflect: use visit structure for map key in DeepEqual
Robert Hencke [Wed, 15 May 2013 21:50:57 +0000 (14:50 -0700)]
reflect: use visit structure for map key in DeepEqual

R=golang-dev, bradfitz, jonathan, r
CC=golang-dev
https://golang.org/cl/8730044

12 years agoruntime: fix GC scanning of slices
Dmitriy Vyukov [Wed, 15 May 2013 19:50:32 +0000 (23:50 +0400)]
runtime: fix GC scanning of slices
If a slice points to an array embedded in a struct,
the whole struct can be incorrectly scanned as the slice buffer.
Fixes #5443.

R=cshapiro, iant, r, cshapiro, minux.ma
CC=bradfitz, gobot, golang-dev
https://golang.org/cl/9372044

12 years agomisc/dashboard/codereview: add cshapiro and mpvl to reviewers list.
Rob Pike [Wed, 15 May 2013 17:25:02 +0000 (10:25 -0700)]
misc/dashboard/codereview: add cshapiro and mpvl to reviewers list.

R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/9104052

12 years agoruntime: add simple malloc benchmarks
Dmitriy Vyukov [Wed, 15 May 2013 17:22:32 +0000 (21:22 +0400)]
runtime: add simple malloc benchmarks
Allocs of size 16 can bypass atomic set of the allocated bit, while allocs of size 8 can not.
Allocs with and w/o type info hit different paths inside of malloc.
Current results on linux/amd64:
BenchmarkMalloc8 50000000         43.6 ns/op
BenchmarkMalloc16 50000000         46.7 ns/op
BenchmarkMallocTypeInfo8 50000000         61.3 ns/op
BenchmarkMallocTypeInfo16 50000000         63.5 ns/op

R=golang-dev, remyoudompheng, minux.ma, bradfitz, iant
CC=golang-dev
https://golang.org/cl/9090045

12 years agoruntime: Optimize aeshash a bit. Use a better predicted branch
Keith Randall [Wed, 15 May 2013 16:40:14 +0000 (09:40 -0700)]
runtime: Optimize aeshash a bit.  Use a better predicted branch
for checking for page boundary.  Also avoid boundary check
when >=16 bytes are hashed.

benchmark                        old ns/op    new ns/op    delta
BenchmarkHashStringSpeed                23           22   -0.43%
BenchmarkHashBytesSpeed                 44           42   -3.61%
BenchmarkHashStringArraySpeed           71           68   -4.05%

R=iant, khr
CC=gobot, golang-dev, google
https://golang.org/cl/9123046

12 years agoruntime: transfer whole span from MCentral to MCache
Dmitriy Vyukov [Wed, 15 May 2013 14:35:05 +0000 (18:35 +0400)]
runtime: transfer whole span from MCentral to MCache
Finer-grained transfers were relevant with per-M caches,
with per-P caches they are not relevant and harmful for performance.
For few small size classes where it makes difference,
it's fine to grab the whole span (4K).

benchmark          old ns/op    new ns/op    delta
BenchmarkMalloc           42           40   -4.45%

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/9374043

12 years agocrypto/rsa: check for minimal PKCS#1 v1.5 padding.
Adam Langley [Wed, 15 May 2013 14:27:34 +0000 (10:27 -0400)]
crypto/rsa: check for minimal PKCS#1 v1.5 padding.

The PKCS#1 spec requires that the PS padding in an RSA message be at
least 8 bytes long. We were not previously checking this. This isn't
important in the most common situation (session key encryption), but
the impact is unclear in other cases.

This change enforces the specified minimum size.

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/9222045

12 years agocrypto/tls: ignore empty TLS records.
Adam Langley [Wed, 15 May 2013 14:25:54 +0000 (10:25 -0400)]
crypto/tls: ignore empty TLS records.

OpenSSL can be configured to send empty records in order to randomise
the CBC IV. This is an early version of 1/n-1 record splitting (that Go
does) and is quite reasonable, but it results in tls.Conn.Read
returning (0, nil).

This change ignores up to 100 consecutive, empty records to avoid
returning (0, nil) to callers.

Fixes 5309.

R=golang-dev, r, minux.ma
CC=golang-dev
https://golang.org/cl/8852044

12 years agomath/big: save some copies in binaryGCD.
Adam Langley [Wed, 15 May 2013 14:03:22 +0000 (10:03 -0400)]
math/big: save some copies in binaryGCD.

This patch resulted from a bit of quick optimisation in response to a
golang-nuts post. It looks like one could save a couple other copies in
this function, but this addresses the inner loop and is fairly simple.

benchmark                    old ns/op    new ns/op    delta
BenchmarkGCD10x10                 1964         1711  -12.88%
BenchmarkGCD10x100                2019         1736  -14.02%
BenchmarkGCD10x1000               2471         2171  -12.14%
BenchmarkGCD10x10000              6040         5778   -4.34%
BenchmarkGCD10x100000            43204        43025   -0.41%
BenchmarkGCD100x100              11004         8520  -22.57%
BenchmarkGCD100x1000             11820         9446  -20.08%
BenchmarkGCD100x10000            23846        21382  -10.33%
BenchmarkGCD100x100000          133691       131505   -1.64%
BenchmarkGCD1000x1000           120041        95591  -20.37%
BenchmarkGCD1000x10000          136887       113600  -17.01%
BenchmarkGCD1000x100000         295370       273912   -7.26%
BenchmarkGCD10000x10000        2556126      2205198  -13.73%
BenchmarkGCD10000x100000       3159512      2808038  -11.12%
BenchmarkGCD100000x100000    150543094    139986045   -7.01%

R=gri, remyoudompheng
CC=bradfitz, gobot, golang-dev, gri
https://golang.org/cl/9424043

12 years agoruntime: unset m->locks after actual lock unlock
Dmitriy Vyukov [Wed, 15 May 2013 12:48:41 +0000 (16:48 +0400)]
runtime: unset m->locks after actual lock unlock
This is needed for preemptive scheduler,
it will preempt only when m->locks==0,
and we do not want to be preempted while
we have not completely unlocked the lock.

R=golang-dev, khr, iant
CC=golang-dev
https://golang.org/cl/9196047

12 years agoruntime: use enums instead static vars for debugging
Dmitriy Vyukov [Wed, 15 May 2013 07:10:26 +0000 (11:10 +0400)]
runtime: use enums instead static vars for debugging
Compiler can detect and delete dead code with enums,
but can not with static vars.

R=golang-dev, dave, r
CC=golang-dev
https://golang.org/cl/9377043

12 years agoruntime: inline size to class conversion in malloc()
Dmitriy Vyukov [Wed, 15 May 2013 07:02:33 +0000 (11:02 +0400)]
runtime: inline size to class conversion in malloc()
Also change table type from int32[] to int8[] to save space in L1$.

benchmark          old ns/op    new ns/op    delta
BenchmarkMalloc           42           40   -4.68%

R=golang-dev, bradfitz, r
CC=golang-dev
https://golang.org/cl/9199044

12 years agomisc/cgo/test: add missing import
Alex Brainman [Wed, 15 May 2013 05:34:47 +0000 (15:34 +1000)]
misc/cgo/test: add missing import

Fixes windows build.

R=golang-dev
CC=golang-dev
https://golang.org/cl/9429043

12 years agomisc/cgo/test: test for issue 5337.
Shenghou Ma [Wed, 15 May 2013 04:33:29 +0000 (12:33 +0800)]
misc/cgo/test: test for issue 5337.
Test for CL 9226043.

R=golang-dev, dave, iant, bradfitz
CC=golang-dev
https://golang.org/cl/9249043

12 years agocmd/godoc: don't warn about HEAD requests
Brad Fitzpatrick [Wed, 15 May 2013 04:21:11 +0000 (21:21 -0700)]
cmd/godoc: don't warn about HEAD requests

Fixes #5451

R=gri
CC=dsymonds, gobot, golang-dev
https://golang.org/cl/9388043

12 years agocmd/yacc: don't emit line comment when -l is given
Shenghou Ma [Wed, 15 May 2013 04:08:51 +0000 (12:08 +0800)]
cmd/yacc: don't emit line comment when -l is given
Fixes #5447.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9343045

12 years agoos/user: faster user lookup on Windows
Alexey Borzenkov [Wed, 15 May 2013 03:24:54 +0000 (13:24 +1000)]
os/user: faster user lookup on Windows

Trying to lookup user's display name with directory services can
take several seconds when user's computer is not in a domain.
As a workaround, check if computer is joined in a domain first,
and don't use directory services if it is not.
Additionally, don't leak tokens in user.Current().
Fixes #5298.

R=golang-dev, bradfitz, alex.brainman, lucio.dere
CC=golang-dev
https://golang.org/cl/8541047

12 years agomisc/emacs: Add support for methods with unnamed receiver
Dominik Honnef [Wed, 15 May 2013 03:23:35 +0000 (20:23 -0700)]
misc/emacs: Add support for methods with unnamed receiver

This fixes fontification, navigation and indentation for methods
of the form `func (Foo) Bar...`

R=adonovan
CC=gobot, golang-dev
https://golang.org/cl/8951043

12 years agotesting/quick: fix for aliased types, delete duplicate uint8 test, and fix randFloat6...
Jonathan Hseu [Wed, 15 May 2013 00:14:59 +0000 (17:14 -0700)]
testing/quick: fix for aliased types, delete duplicate uint8 test, and fix randFloat64() to give random numbers from (-math.MaxFloat64, math.MaxFloat64).

R=r, agl
CC=agl, bradfitz, golang-dev
https://golang.org/cl/9296046

12 years agoruntime: enable stack scanning by frames
Carl Shapiro [Tue, 14 May 2013 23:38:12 +0000 (16:38 -0700)]
runtime: enable stack scanning by frames

Update #5134

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/9406046

12 years agodatabase/sql: use method values instead of generating closures
Brad Fitzpatrick [Tue, 14 May 2013 23:35:31 +0000 (16:35 -0700)]
database/sql: use method values instead of generating closures

Reduces garbage.

R=adg, r
CC=dsymonds, gobot, golang-dev
https://golang.org/cl/9088045

12 years agocmd/gc: fix race instrumentation of selectors T(v).Field
Rémy Oudompheng [Tue, 14 May 2013 23:25:20 +0000 (01:25 +0200)]
cmd/gc: fix race instrumentation of selectors T(v).Field

Fixes #5424.

R=golang-dev, daniel.morsing, dvyukov, r
CC=golang-dev
https://golang.org/cl/9033048

12 years agoruntime/bytes: fast Compare for byte arrays and strings.
Keith Randall [Tue, 14 May 2013 23:05:51 +0000 (16:05 -0700)]
runtime/bytes: fast Compare for byte arrays and strings.

Uses SSE instructions to process 16 bytes at a time.

fixes #5354

R=bradfitz, google
CC=golang-dev
https://golang.org/cl/8853048

12 years agoencoding/json: allocate less in NewEncoder
Brad Fitzpatrick [Tue, 14 May 2013 22:50:46 +0000 (15:50 -0700)]
encoding/json: allocate less in NewEncoder

The *Encoder is almost always garbage. It doesn't need an
encodeState inside of it (and its bytes.Buffer), since it's
only needed locally inside of Encode.

benchmark                 old ns/op    new ns/op    delta
BenchmarkEncoderEncode         2562         2553   -0.35%

benchmark                 old bytes    new bytes    delta
BenchmarkEncoderEncode          283          102  -63.96%

R=r
CC=gobot, golang-dev
https://golang.org/cl/9365044

12 years agocmd/vet: fix for changes to go/types package
Rob Pike [Tue, 14 May 2013 22:49:58 +0000 (15:49 -0700)]
cmd/vet: fix for changes to go/types package
Need to use (or stub) exact.Value.

R=gri
CC=golang-dev
https://golang.org/cl/9126043

12 years agonet/http: Fix basic authentication with empty password
Alberto García Hierro [Tue, 14 May 2013 22:33:46 +0000 (15:33 -0700)]
net/http: Fix basic authentication with empty password

        The encoded string must include the : separating the username
        and the password, even when the latter is empty. See
        http://www.ietf.org/rfc/rfc2617.txt for more information.

R=golang-dev, bradfitz, adg
CC=golang-dev
https://golang.org/cl/8475043

12 years agoA+C: Alberto García Hierro (individual CLA)
Brad Fitzpatrick [Tue, 14 May 2013 22:31:46 +0000 (15:31 -0700)]
A+C: Alberto García Hierro (individual CLA)

Generated by addca.

R=gobot
CC=golang-dev
https://golang.org/cl/9419045

12 years agoarchive/tar: skip NUL-filled unused octal fields
Shenghou Ma [Tue, 14 May 2013 20:40:42 +0000 (04:40 +0800)]
archive/tar: skip NUL-filled unused octal fields
Fixes #5290.

R=golang-dev, dave, bradfitz, r
CC=golang-dev
https://golang.org/cl/8763044

12 years agoimage: minor update of comments.
Robin Eklind [Tue, 14 May 2013 20:28:16 +0000 (13:28 -0700)]
image: minor update of comments.

R=golang-dev, iant, bradfitz, nigeltao
CC=golang-dev
https://golang.org/cl/9408044

12 years agocmd/gc: improve syntax error for "import testing"
Shenghou Ma [Tue, 14 May 2013 20:19:19 +0000 (04:19 +0800)]
cmd/gc: improve syntax error for "import testing"
for this program:
package A
import testing

old diagnostics:
pkg.go:2: syntax error: unexpected semicolon or newline, expecting string literal

now:
pkg.go:2: syntax error: missing import path; require quoted string

Fixes #5332.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9393043

12 years agodoc/go_spec: fix typos
Shenghou Ma [Tue, 14 May 2013 19:50:27 +0000 (03:50 +0800)]
doc/go_spec: fix typos
Fixes #5456.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9400044

12 years agomisc/vim: test.sh seems to only work on Mac OS X.
Bill Thiede [Tue, 14 May 2013 16:54:16 +0000 (09:54 -0700)]
misc/vim: test.sh seems to only work on Mac OS X.

cmp(1) on FreeBSD requires two file arguments.  grep -P on Linux (at least
Ubuntu 12.04) is described in the man page as "This is highly
experimental" and doesn't seem to work. On FreeBSD the man page states
"This option  is not supported in FreeBSD."  Needed this to work while
debugging some funky behavior of 'Import' in my local vim setup.

R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/7675043

12 years agocmd/api: don't print out except.txt removed features to stdout
Brad Fitzpatrick [Tue, 14 May 2013 16:43:56 +0000 (09:43 -0700)]
cmd/api: don't print out except.txt removed features to stdout

It's just noise. They've already been acknowledged in except.txt.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9392047

12 years agogo/token: let FileSet.AddFile take a negative base
Brad Fitzpatrick [Tue, 14 May 2013 16:30:13 +0000 (09:30 -0700)]
go/token: let FileSet.AddFile take a negative base

Negative base now means "automatic". Fixes a higher
level race.

Fixes #5418

R=gri
CC=golang-dev
https://golang.org/cl/9269043

12 years agotag go1.1
Andrew Gerrand [Mon, 13 May 2013 20:04:08 +0000 (13:04 -0700)]
tag go1.1

12 years agoruntime/race: improve public documentation
Dmitriy Vyukov [Mon, 13 May 2013 06:28:12 +0000 (10:28 +0400)]
runtime/race: improve public documentation
Move the documentation from race.go to doc.go, because
race.go uses +build race, so it's not normally parsed by go doc.
Rephrase the documentation for end users, provide link to race
detector manual.
Fixes #5444.

R=golang-dev, minux.ma, adg, r
CC=golang-dev
https://golang.org/cl/9144050

12 years agodoc: add a "New packages" section to the 1.1 release notes.
Nigel Tao [Mon, 13 May 2013 04:58:27 +0000 (21:58 -0700)]
doc: add a "New packages" section to the 1.1 release notes.

R=adg, r
CC=golang-dev
https://golang.org/cl/9344044

12 years agotag go1.1rc3
Andrew Gerrand [Wed, 8 May 2013 23:06:25 +0000 (16:06 -0700)]
tag go1.1rc3

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9124045

12 years agoruntime: fix crash in select
Ian Lance Taylor [Wed, 8 May 2013 21:58:34 +0000 (14:58 -0700)]
runtime: fix crash in select
runtime.park() can access freed select descriptor
due to a racing free in another thread.
See the comment for details.

Slightly modified version of dvyukov's CL 9259045.

No test yet.  Before this CL, the test described in issue 5422
would fail about every 40 times for me.  With this CL, I ran
the test 5900 times with no failures.

Fixes #5422.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9311043

12 years agospec: fix incorrect example
Robert Griesemer [Wed, 8 May 2013 17:42:08 +0000 (10:42 -0700)]
spec: fix incorrect example

Fixes #5430.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/9305043

12 years agodoc: pull front page featured articles using new blog JSON feed
Andrew Gerrand [Wed, 8 May 2013 16:23:50 +0000 (09:23 -0700)]
doc: pull front page featured articles using new blog JSON feed

R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/9288045

12 years agocmd/cgo: pass -Wsystem-headers when looking for errors
Ian Lance Taylor [Wed, 8 May 2013 13:28:33 +0000 (06:28 -0700)]
cmd/cgo: pass -Wsystem-headers when looking for errors

This works around a bug in GCC 4.8.0.

Fixes #5118.

R=golang-dev, r, minux.ma
CC=golang-dev
https://golang.org/cl/9120045

12 years agonet: fix dial race on plan9 and windows
Alex Brainman [Wed, 8 May 2013 06:19:02 +0000 (16:19 +1000)]
net: fix dial race on plan9 and windows

Fixes #5349.

R=golang-dev, lucio.dere, dsymonds, bradfitz, iant, adg, dave, r
CC=golang-dev
https://golang.org/cl/9159043

12 years agoeffective_go.html: be more accepting in the guidelines for interface names
Rob Pike [Tue, 7 May 2013 18:41:36 +0000 (11:41 -0700)]
effective_go.html: be more accepting in the guidelines for interface names
Fixes #5421.

R=golang-dev, bradfitz, adg
CC=golang-dev
https://golang.org/cl/9274043

12 years agotag go1.1rc2
Andrew Gerrand [Tue, 7 May 2013 00:34:17 +0000 (17:34 -0700)]
tag go1.1rc2

12 years agoapi: add go1.1.txt; update cmd/api to use it
Brad Fitzpatrick [Tue, 7 May 2013 00:25:09 +0000 (17:25 -0700)]
api: add go1.1.txt; update cmd/api to use it

R=golang-dev, adg, r
CC=golang-dev
https://golang.org/cl/9250043

12 years agoruntime: fix crash in badsignal()
Dmitriy Vyukov [Mon, 6 May 2013 23:15:03 +0000 (16:15 -0700)]
runtime: fix crash in badsignal()
The linker can generate split stack prolog when a textflag 7 function
makes an indirect function call.  If it happens, badsignal() crashes
trying to dereference g.
Fixes #5337.

R=bradfitz, dave, adg, iant, r, minux.ma
CC=adonovan, golang-dev
https://golang.org/cl/9226043

12 years agoruntime: reduce max arena size on windows/amd64 to 32 GiB
Shenghou Ma [Mon, 6 May 2013 22:53:02 +0000 (06:53 +0800)]
runtime: reduce max arena size on windows/amd64 to 32 GiB
Update #5236
Update #5402
This CL reduces gofmt's committed memory from 545864 KiB to 139568 KiB.
Note: Go 1.0.3 uses about 70MiB.

R=golang-dev, r, iant, nightlyone
CC=golang-dev
https://golang.org/cl/9245043

12 years agodatabase/sql: remove an unused field from Rows
Brad Fitzpatrick [Mon, 6 May 2013 22:16:47 +0000 (15:16 -0700)]
database/sql: remove an unused field from Rows

Found while debugging memory usage. Nobody accesses this field
anymore.

R=golang-dev, i.caught.air, adg, r
CC=golang-dev
https://golang.org/cl/9108043

12 years agodoc: add FAQ entry about language changes
Andrew Gerrand [Mon, 6 May 2013 22:02:56 +0000 (15:02 -0700)]
doc: add FAQ entry about language changes

R=golang-dev, dsymonds, r
CC=golang-dev
https://golang.org/cl/9244043

12 years agosyscall: fix prototype of Fchflags (API change)
Shenghou Ma [Mon, 6 May 2013 21:20:00 +0000 (05:20 +0800)]
syscall: fix prototype of Fchflags (API change)
API change, but the old API is obviously wrong.

R=golang-dev, iant, r, rsc
CC=golang-dev
https://golang.org/cl/9157044

12 years agogo/doc/example: Fix bug causing false negatives for Example playability.
Jeremiah Harmsen [Mon, 6 May 2013 17:15:16 +0000 (10:15 -0700)]
go/doc/example: Fix bug causing false negatives for Example playability.

Allows Examples with KeyValue expressions to be playable in godoc.

During the traversal of the abstract syntax tree any KeyValueExpr Key.Name was incorrectly being added as an unresolved identifier.
Since this identifier could not be provided the Example was marked as unplayable.
This updates the AST traversal to skip Keys (but continue traversing the Values).

Example of problematic AST now fixed (see L99 where "UpperBound" was being added as a missing identifier):

 81  .  .  .  .  .  .  .  .  .  Values: []ast.Expr (len = 1) {
 82  .  .  .  .  .  .  .  .  .  .  0: *ast.UnaryExpr {
 83  .  .  .  .  .  .  .  .  .  .  .  OpPos: 12:19
 84  .  .  .  .  .  .  .  .  .  .  .  Op: &
 85  .  .  .  .  .  .  .  .  .  .  .  X: *ast.CompositeLit {
 86  .  .  .  .  .  .  .  .  .  .  .  .  Type: *ast.SelectorExpr {
 87  .  .  .  .  .  .  .  .  .  .  .  .  .  X: *ast.Ident {
 88  .  .  .  .  .  .  .  .  .  .  .  .  .  .  NamePos: 12:20
 89  .  .  .  .  .  .  .  .  .  .  .  .  .  .  Name: "t_proto"
 90  .  .  .  .  .  .  .  .  .  .  .  .  .  }
 91  .  .  .  .  .  .  .  .  .  .  .  .  .  Sel: *ast.Ident {
 92  .  .  .  .  .  .  .  .  .  .  .  .  .  .  NamePos: 12:41
 93  .  .  .  .  .  .  .  .  .  .  .  .  .  .  Name: "BConfig"
 94  .  .  .  .  .  .  .  .  .  .  .  .  .  }
 95  .  .  .  .  .  .  .  .  .  .  .  .  }
 96  .  .  .  .  .  .  .  .  .  .  .  .  Lbrace: 12:79
 97  .  .  .  .  .  .  .  .  .  .  .  .  Elts: []ast.Expr (len = 2) {
 98  .  .  .  .  .  .  .  .  .  .  .  .  .  0: *ast.KeyValueExpr {
 99  .  .  .  .  .  .  .  .  .  .  .  .  .  .  Key: *ast.Ident {
100  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  NamePos: 13:3
101  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  Name: "UpperBound"
102  .  .  .  .  .  .  .  .  .  .  .  .  .  .  }
103  .  .  .  .  .  .  .  .  .  .  .  .  .  .  Colon: 13:13
104  .  .  .  .  .  .  .  .  .  .  .  .  .  .  Value: *ast.CallExpr {
105  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  Fun: *ast.SelectorExpr {
106  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  X: *ast.Ident {
107  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  NamePos: 13:15
108  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  Name: "proto"
109  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  }
110  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  Sel: *ast.Ident {
111  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  NamePos: 13:21
112  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  Name: "Float32"
113  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  }

R=adg
CC=gobot, golang-dev, gri
https://golang.org/cl/8569045

12 years agoC: add Jeremiah Harmsen (Google CLA)
Andrew Gerrand [Mon, 6 May 2013 17:12:45 +0000 (10:12 -0700)]
C: add Jeremiah Harmsen (Google CLA)

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/9229043

12 years agoimage/png: fix error message to not return width twice
Brad Fitzpatrick [Mon, 6 May 2013 16:59:33 +0000 (09:59 -0700)]
image/png: fix error message to not return width twice

Fixes #5413

R=golang-dev, dave, adg
CC=golang-dev
https://golang.org/cl/9153045