]> Cypherpunks repositories - gostls13.git/log
gostls13.git
11 years agocmd/6a: add support for nacl/amd64p32
Dave Cheney [Fri, 7 Mar 2014 05:02:25 +0000 (16:02 +1100)]
cmd/6a: add support for nacl/amd64p32

Replaces CL 70000043.

Switch to the amd64p32 linker model if we are building under nacl/amd64p32.

No need to introduce linkarchinit() as 6a contains its own main() function.

LGTM=rsc
R=rsc, minux.ma
CC=golang-codereviews
https://golang.org/cl/72020043

11 years agocmd/gc, cmd/5g, cmd/6g, cmd/8g: introduce linkarchinit and add amd64p32 support
Dave Cheney [Fri, 7 Mar 2014 04:33:44 +0000 (15:33 +1100)]
cmd/gc, cmd/5g, cmd/6g, cmd/8g: introduce linkarchinit and add amd64p32 support

Replaces CL 70000043.

Introduce linkarchinit() from cmd/ld.

For cmd/6g, switch to the amd64p32 linker model if we are building under nacl/amd64p32.

LGTM=rsc
R=rsc
CC=golang-codereviews
https://golang.org/cl/71330045

11 years agoencoding/gob: document that Decode returns EOF at EOF
Rob Pike [Fri, 7 Mar 2014 02:24:14 +0000 (13:24 +1100)]
encoding/gob: document that Decode returns EOF at EOF

Just commentary describing existing behavior, no code changes.

Fixes #7033.

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/71860043

11 years agostrconv: document value returned by ParseInt when there is an error
Rob Pike [Fri, 7 Mar 2014 02:23:50 +0000 (13:23 +1100)]
strconv: document value returned by ParseInt when there is an error
Documenting existing behavior; new commentary only.
Fixes #7105.

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/68840044

11 years agospec: clarify when constant slice indices must be in range
Robert Griesemer [Fri, 7 Mar 2014 01:11:13 +0000 (17:11 -0800)]
spec: clarify when constant slice indices must be in range

This documents the status quo for most implementations,
with one exception: gc generates a run-time error for
constant but out-of-range indices when slicing a constant
string. See issue 7200 for a detailed discussion.

LGTM=r
R=r, rsc, iant, ken
CC=golang-codereviews
https://golang.org/cl/72160044

11 years agoruntime: shrink bigger stacks without any copying.
Keith Randall [Fri, 7 Mar 2014 00:03:43 +0000 (16:03 -0800)]
runtime: shrink bigger stacks without any copying.

Instead, split the underlying storage in half and
free just half of it.

Shrinking without copying lets us reclaim storage used
by a previously profligate Go routine that has now blocked
inside some C code.

To shrink in place, we need all stacks to be a power of 2 in size.

LGTM=rsc
R=golang-codereviews, rsc
CC=golang-codereviews
https://golang.org/cl/69580044

11 years agocmd/go: add test case for cgo coverage
Russ Cox [Thu, 6 Mar 2014 23:36:32 +0000 (18:36 -0500)]
cmd/go: add test case for cgo coverage

This is a test case for CL 34680044.

Fixes #6333.

LGTM=bradfitz
R=golang-codereviews, bradfitz, minux.ma
CC=golang-codereviews
https://golang.org/cl/71230049

11 years agoruntime: fix malloc page alignment + efence
Russ Cox [Thu, 6 Mar 2014 23:34:29 +0000 (18:34 -0500)]
runtime: fix malloc page alignment + efence

Two memory allocator bug fixes.

- efence is not maintaining the proper heap metadata
  to make eventual memory reuse safe, so use SysFault.

- now that our heap PageSize is 8k but most hardware
  uses 4k pages, SysAlloc and SysReserve results must be
  explicitly aligned. Do that in a few more call sites and
  document this fact in malloc.h.

Fixes #7448.

LGTM=iant
R=golang-codereviews, josharian, iant
CC=dvyukov, golang-codereviews
https://golang.org/cl/71750048

11 years agocmd/5c: fix arm build
Dave Cheney [Thu, 6 Mar 2014 23:13:00 +0000 (10:13 +1100)]
cmd/5c: fix arm build

cmd/5c/txt.c was missing from CL 72010043.

LGTM=bradfitz
R=rsc, bradfitz
CC=golang-codereviews
https://golang.org/cl/72220043

11 years agocmd/cc, cmd/5c, cmd/6c, cmd/8c: introduce linkarchinit and add amd64p32 support
Dave Cheney [Thu, 6 Mar 2014 22:55:59 +0000 (09:55 +1100)]
cmd/cc, cmd/5c, cmd/6c, cmd/8c: introduce linkarchinit and add amd64p32 support

Replaces CL 70000043.

Introduce linkarchinit() from cmd/ld.

For cmd/6c, switch to the amd64p32 linker model if we are building under nacl/amd64p32.

LGTM=rsc
R=rsc
CC=golang-codereviews
https://golang.org/cl/72010043

11 years agoruntime: print goroutine header on fault
Dmitriy Vyukov [Thu, 6 Mar 2014 20:01:24 +0000 (00:01 +0400)]
runtime: print goroutine header on fault
I've just needed the G status on fault to debug runtime bug.
For some reason we print everything except header here.
Make it more informative and consistent.

R=rsc
CC=golang-codereviews
https://golang.org/cl/67870056

11 years agoruntime: fix warnings on Plan 9
David du Colombier [Thu, 6 Mar 2014 19:56:22 +0000 (20:56 +0100)]
runtime: fix warnings on Plan 9

warning: pkg/runtime/mgc0.c:2352 format mismatch p UVLONG, arg 2
warning: pkg/runtime/mgc0.c:2352 format mismatch p UVLONG, arg 3

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/71950044

11 years agoruntime: use custom thunks for race calls instead of cgo
Dmitriy Vyukov [Thu, 6 Mar 2014 19:48:30 +0000 (23:48 +0400)]
runtime: use custom thunks for race calls instead of cgo
Implement custom assembly thunks for hot race calls (memory accesses and function entry/exit).
The thunks extract caller pc, verify that the address is in heap or global and switch to g0 stack.

Before:
ok   regexp 3.692s
ok   compress/bzip2 9.461s
ok   encoding/json 6.380s
After:
ok   regexp 2.229s (-40%)
ok   compress/bzip2 4.703s (-50%)
ok   encoding/json 3.629s (-43%)

For comparison, normal non-race build:
ok   regexp 0.348s
ok   compress/bzip2 0.304s
ok   encoding/json 0.661s
Race build:
ok   regexp 2.229s (+540%)
ok   compress/bzip2 4.703s (+1447%)
ok   encoding/json 3.629s (+449%)

Also removes some race-related special cases from cgocall and scheduler.
In long-term it will allow to remove cyclic runtime/race dependency on cmd/cgo.

Fixes #4249.
Fixes #7460.
Update #6508
Update #6688

R=iant, rsc, bradfitz
CC=golang-codereviews
https://golang.org/cl/55100044

11 years agonet/http/cgi: kill child CGI process on copy error
Brad Fitzpatrick [Thu, 6 Mar 2014 19:24:28 +0000 (11:24 -0800)]
net/http/cgi: kill child CGI process on copy error

Fixes #7196

LGTM=rsc
R=golang-codereviews, rsc
CC=golang-codereviews, iant
https://golang.org/cl/69970052

11 years agospec: clarify value passed for final parameter of variadic functions
Robert Griesemer [Thu, 6 Mar 2014 18:35:05 +0000 (10:35 -0800)]
spec: clarify value passed for final parameter of variadic functions

NOT A LANGUAGE CHANGE.

Fixes #7073.

LGTM=r
R=r, rsc, iant, ken
CC=golang-codereviews
https://golang.org/cl/68840045

11 years agoruntime: fix bad g status after copystack
Dmitriy Vyukov [Thu, 6 Mar 2014 17:33:19 +0000 (21:33 +0400)]
runtime: fix bad g status after copystack

LGTM=khr
R=khr
CC=golang-codereviews, rsc
https://golang.org/cl/69870054

11 years agoruntime: fix runaway memory usage
Dmitriy Vyukov [Thu, 6 Mar 2014 17:33:00 +0000 (21:33 +0400)]
runtime: fix runaway memory usage
It was caused by mstats.heap_alloc skew.
Fixes #7430.

LGTM=khr
R=golang-codereviews, khr
CC=golang-codereviews, rsc
https://golang.org/cl/69870055

11 years agonet/http: make TestUseProxy repeatable
Dmitriy Vyukov [Thu, 6 Mar 2014 14:44:14 +0000 (18:44 +0400)]
net/http: make TestUseProxy repeatable
Currently it fails on second and subsequent runs (when using -cpu=1,2,4) as:
--- FAIL: TestUseProxy-4 (0.00 seconds)
proxy_test.go:109: useProxy(barbaz.net) = true, want false
proxy_test.go:109: useProxy(foobar.com) = true, want false
proxy_test.go:109: useProxy(www.foobar.com) = true, want false

LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/71940044

11 years agorun.bash: explain why we set GOMAXPROCS for runtime test
Dmitriy Vyukov [Thu, 6 Mar 2014 09:16:14 +0000 (13:16 +0400)]
run.bash: explain why we set GOMAXPROCS for runtime test
Fixes #7459.

LGTM=rsc
R=rsc
CC=golang-codereviews
https://golang.org/cl/71060044

11 years agoapi: update next.txt
Shenghou Ma [Thu, 6 Mar 2014 06:44:04 +0000 (01:44 -0500)]
api: update next.txt

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/71950043

11 years agoapi: add NetBSD/ARM EABI exceptions.
Shenghou Ma [Thu, 6 Mar 2014 06:19:16 +0000 (01:19 -0500)]
api: add NetBSD/ARM EABI exceptions.

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/71940043

11 years agocmd/dist: enable GOARM>5 on NetBSD/ARM.
Shenghou Ma [Thu, 6 Mar 2014 05:57:23 +0000 (00:57 -0500)]
cmd/dist: enable GOARM>5 on NetBSD/ARM.
Tested GOARM=6 on Raspberry Pi, and I found only a few tests that
use sub-normal numbers fails. I have a patch to NetBSD kernel pending
that fixes this issue (NetBSD kernel doesn't allow us to disable the
Flush-to-Zero feature).

LGTM=jsing
R=golang-codereviews, jsing
CC=golang-codereviews
https://golang.org/cl/70730043

11 years agosyscall: update NetBSD/ARM port to EABI.
Shenghou Ma [Thu, 6 Mar 2014 05:55:57 +0000 (00:55 -0500)]
syscall: update NetBSD/ARM port to EABI.

LGTM=jsing
R=golang-codereviews, jsing
CC=golang-codereviews
https://golang.org/cl/70720043

11 years agospec: be more precise about underlying types of predeclared types
Robert Griesemer [Thu, 6 Mar 2014 03:37:44 +0000 (19:37 -0800)]
spec: be more precise about underlying types of predeclared types

The underlying type of the predeclared type error is not itself,
but the interface it is defined as.

Fixes #7444.

LGTM=r, rsc
R=r, rsc, iant, ken
CC=golang-codereviews
https://golang.org/cl/71790044

11 years agodoc/go_faq.html: reference the new wiki page titled Go Code Review Comments
Rob Pike [Thu, 6 Mar 2014 02:15:09 +0000 (13:15 +1100)]
doc/go_faq.html: reference the new wiki page titled Go Code Review Comments

Fixes #7449.

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/71610044

11 years agonet/rpc/jsonrpc: add temporarily-disabled failing test
Brad Fitzpatrick [Thu, 6 Mar 2014 00:01:37 +0000 (16:01 -0800)]
net/rpc/jsonrpc: add temporarily-disabled failing test

To be enabled by https://golang.org/cl/71230045/

Update #7442

LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/69860056

11 years agonet/http: deflake a test
Brad Fitzpatrick [Wed, 5 Mar 2014 22:56:50 +0000 (14:56 -0800)]
net/http: deflake a test

I missed this one in codereview.appspot.com/70010050
Same thing, but different test.

Fixes windows-amd64-race and likely other Windows
machines failing like:
http://build.golang.org/log/0382bf0048bf5835a51a8a902df5c6fc73cd7ff5

LGTM=adg
R=rsc, adg
CC=golang-codereviews
https://golang.org/cl/71770043

11 years agodoc: update links in contribute.html
Brad Fitzpatrick [Wed, 5 Mar 2014 22:09:03 +0000 (14:09 -0800)]
doc: update links in contribute.html

CLA links are now redirects. Use new URLs instead.

Also, use https:// links for all Google sites where
the http version just redirects to https anyway.
(That's all links on the page, as it turns out)

LGTM=adg
R=golang-codereviews, adg
CC=golang-codereviews
https://golang.org/cl/69980051

11 years agonet/http: minor fixes and optimization for Response.TLS
Brad Fitzpatrick [Wed, 5 Mar 2014 20:40:13 +0000 (12:40 -0800)]
net/http: minor fixes and optimization for Response.TLS

Also add it to doc/go1.3.txt.

Update #7289

LGTM=rsc
R=rsc
CC=golang-codereviews
https://golang.org/cl/71740043

11 years agoCONTRIBUTORS: add David Covert (Google CLA)
Russ Cox [Wed, 5 Mar 2014 20:39:34 +0000 (15:39 -0500)]
CONTRIBUTORS: add David Covert (Google CLA)

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/71670043

11 years agoA+C: Manoj Dayaram (Moov Corporation, corporate CLA)
Russ Cox [Wed, 5 Mar 2014 20:27:36 +0000 (15:27 -0500)]
A+C: Manoj Dayaram (Moov Corporation, corporate CLA)

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/71700043

11 years agonet/http: Add TLS Connection State to Responses.
Paul A Querna [Wed, 5 Mar 2014 20:25:55 +0000 (12:25 -0800)]
net/http: Add TLS Connection State to Responses.

Fixes #7289.

LGTM=bradfitz
R=golang-codereviews, r, bradfitz, rsc
CC=golang-codereviews
https://golang.org/cl/52660047

11 years agoA+C: Paul A Querna (individual CLA)
Brad Fitzpatrick [Wed, 5 Mar 2014 20:22:10 +0000 (12:22 -0800)]
A+C: Paul A Querna (individual CLA)

Generated by addca.

R=gobot
CC=golang-codereviews
https://golang.org/cl/71570044

11 years agosyscall: add mmap constants for NetBSD/ARM.
Shenghou Ma [Wed, 5 Mar 2014 20:18:36 +0000 (15:18 -0500)]
syscall: add mmap constants for NetBSD/ARM.
Fixes the syscall test.

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/71470043

11 years agospec: shadowed return parameters may be disallowed
Robert Griesemer [Wed, 5 Mar 2014 19:59:53 +0000 (11:59 -0800)]
spec: shadowed return parameters may be disallowed

This documents the implemented behavior of both
gc and gccgo as an implementation restriction.

NOT A LANGUAGE CHANGE.

Fixes #5425.

LGTM=rsc, r, iant
R=r, iant, rsc, ken
CC=golang-codereviews
https://golang.org/cl/71430043

11 years agocmd/dist: support building pkg/runtime/*.
Shenghou Ma [Wed, 5 Mar 2014 19:57:17 +0000 (14:57 -0500)]
cmd/dist: support building pkg/runtime/*.
Essentialy for running tests without a working cmd/go.
While we're at it, also fix a typo.

LGTM=rsc
R=golang-codereviews, rsc
CC=golang-codereviews
https://golang.org/cl/70640043

11 years agoencoding/gob: improve interface assignment error message
Kelsey Hightower [Wed, 5 Mar 2014 19:52:18 +0000 (06:52 +1100)]
encoding/gob: improve interface assignment error message

During the glob decoding process interface values are set to concrete
values after a test for assignability. If the assignability test fails
a slightly vague error message is produced. While technically accurate
the error message does not clearly describe the problem.

Rewrite the error message to include the usage of the word assignable,
which makes it clear the concrete value type is not assignable to the
interface value type.

Fixes #6467.

LGTM=r
R=golang-codereviews, rsc, r
CC=golang-codereviews
https://golang.org/cl/71590043

11 years agoencoding/xml: add test for EncodeToken
Shawn Smith [Wed, 5 Mar 2014 19:49:33 +0000 (14:49 -0500)]
encoding/xml: add test for EncodeToken

LGTM=rsc
R=golang-codereviews, josharian, dave, iant, bradfitz, rsc
CC=golang-codereviews
https://golang.org/cl/47870043

11 years agocmd/ld: don't include padding length in size of the note section
Shenghou Ma [Wed, 5 Mar 2014 19:40:55 +0000 (14:40 -0500)]
cmd/ld: don't include padding length in size of the note section
Recently NetBSD starts to enforce this, and refuses to execute
the program if n is larger than the sum of entry sizes.

Before:
$ readelf -n ../bin/go.old
Notes at offset 0x00000bd0 with length 0x00000019:
  Owner         Data size       Description
  NetBSD                0x00000004      NT_VERSION (version)
readelf: Warning: corrupt note found at offset 18 into core notes
readelf: Warning:  type: 0, namesize: 00000000, descsize: 00000000
$ readelf -n ../bin/go
Notes at offset 0x00000bd0 with length 0x00000018:
Owner         Data size       Description
NetBSD                0x00000004      NT_VERSION (version)

LGTM=iant
R=iant
CC=golang-codereviews
https://golang.org/cl/70710043

11 years agocmd/go: add support for coverage in CgoFiles
Alberto García Hierro [Wed, 5 Mar 2014 19:28:11 +0000 (14:28 -0500)]
cmd/go: add support for coverage in CgoFiles

Add CgoFiles to the covered files when building
with cover support.

LGTM=rsc
R=golang-codereviews, gobot, r, rsc
CC=golang-codereviews
https://golang.org/cl/34680044

11 years agocmd/dist: use vfprintf on Windows, same as on Unix
Russ Cox [Wed, 5 Mar 2014 19:16:30 +0000 (14:16 -0500)]
cmd/dist: use vfprintf on Windows, same as on Unix

Apparently, the Windows routines sometimes fail to generate output.
Copy the Unix stdio-based implementations instead.

Suggested by Pietro Gagliardi in CL 65280043 but that CL
seems to have been abandoned.

Fixes #7242.

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/71550044

11 years agocmd/gc: allow append and complex builtins to accept 2-result call expression as first...
Chris Manghane [Wed, 5 Mar 2014 19:16:21 +0000 (14:16 -0500)]
cmd/gc: allow append and complex builtins to accept 2-result call expression as first argument.

Fixes #5793.

LGTM=rsc
R=rsc, adonovan, dave
CC=golang-codereviews
https://golang.org/cl/13367051

11 years agocmd/dist: respect system CFLAGS/LDFLAGS
Jan Ziak [Wed, 5 Mar 2014 19:10:22 +0000 (14:10 -0500)]
cmd/dist: respect system CFLAGS/LDFLAGS

Update #6882.

LGTM=rsc
R=golang-codereviews, rsc
CC=golang-codereviews
https://golang.org/cl/69860055

11 years agoruntime: handle Go calls C calls Go panic correctly on windows/386
Russ Cox [Wed, 5 Mar 2014 16:10:40 +0000 (11:10 -0500)]
runtime: handle Go calls C calls Go panic correctly on windows/386

32-bit Windows uses "structured exception handling" (SEH) to
handle hardware faults: that there is a per-thread linked list
of fault handlers maintained in user space instead of
something like Unix's signal handlers. The structures in the
linked list are required to live on the OS stack, and the
usual discipline is that the function that pushes a record
(allocated from the current stack frame) onto the list pops
that record before returning. Not to pop the entry before
returning creates a dangling pointer error: the list head
points to a stack frame that no longer exists.

Go pushes an SEH record in the top frame of every OS thread,
and that record suffices for all Go execution on that thread,
at least until cgo gets involved.

If we call into C using cgo, that called C code may push its
own SEH records, but by the convention it must pop them before
returning back to the Go code. We assume it does, and that's
fine.

If the C code calls back into Go, we want the Go SEH handler
to become active again, not whatever C has set up. So
runtime.callbackasm1, which handles a call from C back into
Go, pushes a new SEH record before calling the Go code and
pops it when the Go code returns. That's also fine.

It can happen that when Go calls C calls Go like this, the
inner Go code panics. We allow a defer in the outer Go to
recover the panic, effectively wiping not only the inner Go
frames but also the C calls. This sequence was not popping the
SEH stack up to what it was before the cgo calls, so it was
creating the dangling pointer warned about above. When
eventually the m stack was used enough to overwrite the
dangling SEH records, the SEH chain was lost, and any future
panic would not end up in Go's handler.

The bug in TestCallbackPanic and friends was thus creating a
situation where TestSetPanicOnFault - which causes a hardware
fault - would not find the Go fault handler and instead crash
the binary.

Add checks to TestCallbackPanicLocked to diagnose the mistake
in that test instead of leaving a bad state for another test
case to stumble over.

Fix bug by restoring SEH chain during deferred "endcgo"
cleanup.

This bug is likely present in Go 1.2.1, but since it depends
on Go calling C calling Go, with the inner Go panicking and
the outer Go recovering the panic, it seems not important
enough to bother fixing before Go 1.3. Certainly no one has
complained.

Fixes #7470.

LGTM=alex.brainman
R=golang-codereviews, alex.brainman
CC=golang-codereviews, iant, khr
https://golang.org/cl/71440043

11 years agosyscall: regenerate z-files for dragonfly
Joel Sing [Wed, 5 Mar 2014 13:09:09 +0000 (00:09 +1100)]
syscall: regenerate z-files for dragonfly

Regenerate z-files for DragonFly BSD 3.6.

F_DUP_FD_CLOEXEC is now supported, so remove the zero value constant
from types_dragonfly.go so that we use the generated value from the
z-files.

LGTM=mikioh.mikioh
R=golang-codereviews, mikioh.mikioh
CC=golang-codereviews
https://golang.org/cl/70080047

11 years agosyscall: fix mksysnum_dragonfly.pl
Joel Sing [Wed, 5 Mar 2014 13:08:34 +0000 (00:08 +1100)]
syscall: fix mksysnum_dragonfly.pl

The format of the DragonFly BSD syscalls.master file has changed
slightly - update mksysnum_dragonfly.pl to match.

LGTM=mikioh.mikioh
R=golang-codereviews, mikioh.mikioh
CC=golang-codereviews
https://golang.org/cl/71460044

11 years agonet: disable "udp" to IPv6 unicast address loopback test on dragonfly
Joel Sing [Wed, 5 Mar 2014 13:08:03 +0000 (00:08 +1100)]
net: disable "udp" to IPv6 unicast address loopback test on dragonfly

Disable the "udp" to IPv6 unicast address on the loopback interface
test under DragonFly BSD. This currently returns a local address of
0.0.0.1, rather than an IPv6 address with zone identifier.

Update #7473

LGTM=mikioh.mikioh
R=golang-codereviews, mikioh.mikioh
CC=golang-codereviews
https://golang.org/cl/71500044

11 years agonet: fix non-blocking connect handling on dragonfly
Joel Sing [Wed, 5 Mar 2014 13:07:16 +0000 (00:07 +1100)]
net: fix non-blocking connect handling on dragonfly

Performing multiple connect system calls on a non-blocking socket
under DragonFly BSD does not necessarily result in errors from earlier
connect calls being returned, particularly if we are connecting to
localhost. Instead, once netpoll tells us that the socket is ready,
get the SO_ERROR socket option to see if the connection succeeded
or failed.

Fixes #7474

LGTM=mikioh.mikioh
R=mikioh.mikioh
CC=golang-codereviews
https://golang.org/cl/69340044

11 years agoos: try openFile before openDir in windows os.OpenFile
Patrick Mézard [Wed, 5 Mar 2014 01:19:56 +0000 (12:19 +1100)]
os: try openFile before openDir in windows os.OpenFile

Logging calls when running "go install -a std" turns:

  547  openDir succeeded
  3593 openDir failed and fell back to openFile
  3592 openFile succeeded
  1    both failed

into:

  3592 openFile succeeded
  548  openFile failed and fell back
  547  openDir succeeded
  1    both failed

Here the change trades 3593 failed openDir for 548 failed openFile.

Fix issue 7426.

LGTM=alex.brainman
R=golang-codereviews, alex.brainman, bradfitz
CC=golang-codereviews
https://golang.org/cl/70480044

11 years agogo/parser: better error position for non-invoked gp/defer functions
Robert Griesemer [Tue, 4 Mar 2014 22:10:30 +0000 (14:10 -0800)]
go/parser: better error position for non-invoked gp/defer functions

Added test cases and expanded test harness to handle token end
positions.

Also: Make sure token end positions are never outside the valid
      position range, as was possible in case of parse errors.

Fixes #7458.

LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/70190046

11 years agonet/smtp: set ServerName in StartTLS, as now required by crypto/tls
Mike Andrews [Tue, 4 Mar 2014 21:43:26 +0000 (13:43 -0800)]
net/smtp: set ServerName in StartTLS, as now required by crypto/tls

the crypto/tls revision d3d43f270632 (CL 67010043, requiring ServerName or InsecureSkipVerify) breaks net/smtp,
since it seems impossible to do SMTP via TLS anymore. i've tried to fix this by simply using a tls.Config with
ServerName, instead of a nil *tls.Config. without this fix, doing SMTP with TLS results in error "tls: either
ServerName or InsecureSkipVerify must be specified in the tls.Config".

testing: the new method TestTlsClient(...) sets up a skeletal smtp server with tls capability, and test client
injects a "fake" certificate allowing tls to work on localhost; thus, the modification to SendMail(...) enabling
this.

Fixes #7437.

LGTM=bradfitz
R=golang-codereviews, josharian, bradfitz
CC=golang-codereviews
https://golang.org/cl/70380043

11 years agonet/http: improve Client.Timeout docs, quiet test
Brad Fitzpatrick [Tue, 4 Mar 2014 21:41:05 +0000 (13:41 -0800)]
net/http: improve Client.Timeout docs, quiet test

LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/70930043

11 years agoliblink: fix arm build
Russ Cox [Tue, 4 Mar 2014 19:59:08 +0000 (14:59 -0500)]
liblink: fix arm build

The arm puts the text flags in a different place
than the other architectures. This needs to be
cleaned up.

TBR=minux
CC=golang-codereviews
https://golang.org/cl/71260043

11 years agonet/http: make Request.ParseForm parse form-urlencoded for method PATCH too
Matt Aimonetti [Tue, 4 Mar 2014 19:58:21 +0000 (11:58 -0800)]
net/http: make Request.ParseForm parse form-urlencoded for method PATCH too

Fixes #7454

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/70990044

11 years agonet/http: fix test failure on some Windows machines
Brad Fitzpatrick [Tue, 4 Mar 2014 19:55:35 +0000 (11:55 -0800)]
net/http: fix test failure on some Windows machines

The network connection dies differently from the server's
perspective on (some) Windows when the client goes away. Match
on the common prefix (common to Unix and Windows) instead of
the network error part.

Fixes #7456

LGTM=josharian
R=golang-codereviews, josharian
CC=alex.brainman, golang-codereviews, iant
https://golang.org/cl/70010050

11 years agoruntime: fix arm build (B not JMP)
Russ Cox [Tue, 4 Mar 2014 19:03:39 +0000 (14:03 -0500)]
runtime: fix arm build (B not JMP)

TBR=dvyukov
CC=golang-codereviews
https://golang.org/cl/71060046

11 years agocmd/ld: clear unused ctxt before morestack
Russ Cox [Tue, 4 Mar 2014 18:53:08 +0000 (13:53 -0500)]
cmd/ld: clear unused ctxt before morestack

For non-closure functions, the context register is uninitialized
on entry and will not be used, but morestack saves it and then the
garbage collector treats it as live. This can be a source of memory
leaks if the context register points at otherwise dead memory.
Avoid this by introducing a parallel set of morestack functions
that clear the context register, and use those for the non-closure functions.

I hope this will help with some of the finalizer flakiness, but it probably won't.

Fixes #7244.

LGTM=dvyukov
R=khr, dvyukov
CC=golang-codereviews
https://golang.org/cl/71030044

11 years agonet/http: deflake another alloc test
Brad Fitzpatrick [Tue, 4 Mar 2014 17:59:07 +0000 (09:59 -0800)]
net/http: deflake another alloc test

I have one machine where this 25 test run is flaky
and fails ("21 >= 21"), but 50 works everywhere.

LGTM=josharian
R=josharian
CC=golang-codereviews
https://golang.org/cl/67870053

11 years agocrypto/cipher: fix AEAD.Open documentation nit
Brad Fitzpatrick [Tue, 4 Mar 2014 17:58:54 +0000 (09:58 -0800)]
crypto/cipher: fix AEAD.Open documentation nit

It mentioned true and false for error values. Instead, just
don't mention the error semantics, as they match normal Go
conventions (if error is non-nil, the other value is
meaningless). We generally only document error values when
they're interesting (where non-nil, non-nil is valid, or the
error value can be certain known values or types).

Fixes #7464

LGTM=agl
R=agl
CC=golang-codereviews
https://golang.org/cl/68440044

11 years agopath/filepath: ensure Glob does not ignore broken symlinks
Kelsey Hightower [Tue, 4 Mar 2014 17:00:45 +0000 (09:00 -0800)]
path/filepath: ensure Glob does not ignore broken symlinks

Fixes #6463.

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/69870050

11 years agonet/http: disable an alloc test under the race detector
Brad Fitzpatrick [Tue, 4 Mar 2014 16:56:52 +0000 (08:56 -0800)]
net/http: disable an alloc test under the race detector

LGTM=dvyukov
R=dvyukov
CC=golang-codereviews
https://golang.org/cl/70200052

11 years agoA+C: Matt Aimonetti (individual CLA)
Brad Fitzpatrick [Tue, 4 Mar 2014 16:39:51 +0000 (08:39 -0800)]
A+C: Matt Aimonetti (individual CLA)

Generated by addca.

R=gobot
CC=golang-codereviews
https://golang.org/cl/71160044

11 years agoA+C: Mike Andrews (individual CLA)
Brad Fitzpatrick [Tue, 4 Mar 2014 16:25:38 +0000 (08:25 -0800)]
A+C: Mike Andrews (individual CLA)

Generated by addca.

R=gobot
CC=golang-codereviews
https://golang.org/cl/71150043

11 years agoA+C: Kelsey Hightower (individual CLA)
Brad Fitzpatrick [Tue, 4 Mar 2014 16:20:09 +0000 (08:20 -0800)]
A+C: Kelsey Hightower (individual CLA)

Generated by addca.

R=gobot
CC=golang-codereviews
https://golang.org/cl/69110045

11 years agoruntime: fix finalizer flakiness
Russ Cox [Tue, 4 Mar 2014 14:46:40 +0000 (09:46 -0500)]
runtime: fix finalizer flakiness

The flakiness appears to be just in tests, not in the actual code.
Specifically, the many tests call runtime.GC once and expect that
the finalizers will be running in the background when GC returns.
Now that the sweep phase is concurrent with execution, however,
the finalizers will not be run until sweep finishes, which might
be quite a bit later. To force sweep to finish, implement runtime.GC
by calling the actual collection twice. The second will complete the
sweep from the first.

This was reliably broken after a few runs before the CL and now
passes tens of runs:

while GOMAXPROCS=2 ./runtime.test -test.run=Finalizer -test.short \
        -test.timeout=300s -test.cpu=$(perl -e 'print ("1,2,4," x 100) . "1"')
do true; done

Fixes #7328.

LGTM=dvyukov
R=dvyukov, dave
CC=golang-codereviews
https://golang.org/cl/71080043

11 years agocmd/go: fix data race on buildLdflags
Dmitriy Vyukov [Tue, 4 Mar 2014 07:42:02 +0000 (11:42 +0400)]
cmd/go: fix data race on buildLdflags
Fixes #7438.

LGTM=rsc
R=golang-codereviews
CC=bradfitz, golang-codereviews, iant, rsc
https://golang.org/cl/70420044

11 years agocmd/gc: use a register to checknil constants.
Rémy Oudompheng [Tue, 4 Mar 2014 07:18:17 +0000 (08:18 +0100)]
cmd/gc: use a register to checknil constants.

Fixes #7346.

LGTM=rsc
R=rsc, iant, khr
CC=golang-codereviews
https://golang.org/cl/69050044

11 years agoruntime: fix traceback on Windows
Russ Cox [Tue, 4 Mar 2014 04:33:27 +0000 (23:33 -0500)]
runtime: fix traceback on Windows

The exception handler runs on the ordinary g stack,
and the stack copier is now trying to do a traceback
across it. That's never been needed before, so it was
unimplemented. Implement it, in all its ugliness.

Fixes windows/amd64 build.

TBR=khr
CC=golang-codereviews
https://golang.org/cl/71030043

11 years agospec: clarify what is considered a function call for len/cap special case
Robert Griesemer [Tue, 4 Mar 2014 04:07:34 +0000 (20:07 -0800)]
spec: clarify what is considered a function call for len/cap special case

gccgo considers built-in function calls returning a constant not as function call (issue 7386)
go/types considers any call (regular or built-in) as a function call

The wording and examples clarify that only "function calls" that are issued
at run-time (and thus do not result in a constant result) are considered
function calls in this case.

gc is inconsistent (issue 7385)
gccgo already interprets the spec accordingly and issue 7386 is moot.
go/types considers all calls (constant or not) as function calls (issue 7457).

Fixes #7387.
Fixes #7386.

LGTM=r, rsc, iant
R=r, rsc, iant, ken
CC=golang-codereviews
https://golang.org/cl/66860046

11 years agonet/http: fix location of StateHijacked and StateActive
Brad Fitzpatrick [Tue, 4 Mar 2014 02:58:28 +0000 (18:58 -0800)]
net/http: fix location of StateHijacked and StateActive

1) Move StateHijacked callback earlier, to make it
panic-proof.  A Hijack followed by a panic didn't previously
result in ConnState getting fired for StateHijacked.  Move it
earlier, to the time of hijack.

2) Don't fire StateActive unless any bytes were read off the
wire while waiting for a request. This means we don't
transition from New or Idle to Active if the client
disconnects or times out. This was documented before, but not
implemented properly.

This CL is required for an pending fix for Issue 7264

LGTM=josharian
R=josharian
CC=golang-codereviews
https://golang.org/cl/69860049

11 years agodoc: add freebsd items
Mikio Hara [Tue, 4 Mar 2014 01:53:24 +0000 (10:53 +0900)]
doc: add freebsd items

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/71000043

11 years agomath/rand: speed up Float32, Float64
Russ Cox [Tue, 4 Mar 2014 01:43:23 +0000 (20:43 -0500)]
math/rand: speed up Float32, Float64

Actually, speed up Int31n and Int63n by avoiding retry loop.

benchmark           old ns/op    new ns/op    delta
BenchmarkFloat32           32           26  -19.45%
BenchmarkFloat64           46           23  -49.47%

Fixes #7267.

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/69980047

11 years agocmd/gc: fix internal crash
Russ Cox [Tue, 4 Mar 2014 00:55:40 +0000 (19:55 -0500)]
cmd/gc: fix internal crash

TBR=ken2
CC=golang-codereviews
https://golang.org/cl/70200053

11 years agonet: enable fast socket creation with close-on-exec flag on freebsd
Mikio Hara [Tue, 4 Mar 2014 00:28:09 +0000 (09:28 +0900)]
net: enable fast socket creation with close-on-exec flag on freebsd

Also makes variable names explicit.

Fixes #7186.

LGTM=iant
R=golang-codereviews, gobot, iant, bradfitz
CC=golang-codereviews
https://golang.org/cl/69100043

11 years agosyscall: add Accept4 for freebsd
Mikio Hara [Tue, 4 Mar 2014 00:27:48 +0000 (09:27 +0900)]
syscall: add Accept4 for freebsd

Update #7186
Update #7428

LGTM=r, bradfitz
R=golang-codereviews, rsc, minux.ma, r, bradfitz
CC=golang-codereviews
https://golang.org/cl/68880043

11 years agoos: handle file creation with close-on-exec flag correctly on darwin, freebsd
Mikio Hara [Tue, 4 Mar 2014 00:27:29 +0000 (09:27 +0900)]
os: handle file creation with close-on-exec flag correctly on darwin, freebsd

Fixes #7187.
Update #7193

LGTM=bradfitz
R=golang-codereviews, dave, rsc, minux.ma, bradfitz
CC=golang-codereviews
https://golang.org/cl/64510043

11 years agosyscall: add support for FreeBSD 10
Mikio Hara [Tue, 4 Mar 2014 00:26:56 +0000 (09:26 +0900)]
syscall: add support for FreeBSD 10

This CL tweaks syscall.InterfaceMessage to support FreeBSD 10 and
prior to 10.

See http://svnweb.freebsd.org/base?view=revision&revision=254804.

Fixes #7193.

LGTM=iant
R=golang-codereviews, rsc, minux.ma, gobot, iant
CC=golang-codereviews
https://golang.org/cl/56980043

11 years agoapi: add FreeBSD 10 exceptions
Mikio Hara [Tue, 4 Mar 2014 00:26:28 +0000 (09:26 +0900)]
api: add FreeBSD 10 exceptions

Update #7193

LGTM=minux.ma
R=golang-codereviews, rsc, minux.ma, iant
CC=golang-codereviews
https://golang.org/cl/57210043

11 years agosyscall: regenerate z-files on FreeBSD 10
Mikio Hara [Tue, 4 Mar 2014 00:26:01 +0000 (09:26 +0900)]
syscall: regenerate z-files on FreeBSD 10

Unfortunately FreeBSD 10 has changed its syscall arguments for
some reasons but as per request at golang-dev this CL does not
generate some structures, syscall numbers and constants as
compatible to FreeBSD 10 as follows:

Structure: Stat_t, IfData, IfMsghdr are based on 8-STABLE
Syscall number: Capsicum API is based on 9-STABLE
Constant: IFT_CARP, SIOCAIFADDR, SIOCSIFPHYADDR are based on 9-STABLE

Update #7193

FreeBSD 10 breaking changes:

r205792: Rename st_*timespec fields to st_*tim for POSIX 2008
compliance.
http://svnweb.freebsd.org/base?view=revision&revision=205792

r254804: Restructure the mbuf pkthdr to make it fit for upcoming
capabilities and features.
http://svnweb.freebsd.org/base?view=revision&revision=254804

r255219: Change the cap_rights_t type from uint64_t to a structure
that we can extend in the future in a backward compatible (API and
ABI) way.
http://svnweb.freebsd.org/base?view=revision&revision=255219

LGTM=iant
R=golang-codereviews, rsc, minux.ma, gobot, iant
CC=golang-codereviews
https://golang.org/cl/56770044

11 years agoruntime: update CBARGS macro for nacl/amd64p32
Dave Cheney [Mon, 3 Mar 2014 23:36:04 +0000 (10:36 +1100)]
runtime: update CBARGS macro for nacl/amd64p32

CBARGS is unused on amd64p32 so make this explicit.

LGTM=bradfitz
R=rsc, bradfitz
CC=golang-codereviews
https://golang.org/cl/70940043

11 years agonet/http: in Client, consume small redirect bodies before making next request
Brad Fitzpatrick [Mon, 3 Mar 2014 19:25:57 +0000 (11:25 -0800)]
net/http: in Client, consume small redirect bodies before making next request

In Go 1.2, closing a request body without reading to EOF
causes the underlying TCP connection to not be reused. This
client code following redirects was never updated when that
happened.

This was part of a previous CL but moved to its own CL at
Josh's request.  Now with test too.

LGTM=josharian
R=josharian
CC=golang-codereviews
https://golang.org/cl/70800043

11 years agocmd/ld: DWARF opcode base to 10
Graham King [Mon, 3 Mar 2014 19:11:04 +0000 (11:11 -0800)]
cmd/ld: DWARF opcode base to 10

DWARF 2 has 9 standard opcodes, so dwarfdump expects us to use an
opcode base of at least 10. Previously we used 5.

Discussion:
https://groups.google.com/forum/#!topic/golang-dev/d-BqpPgalzc

LGTM=josharian, rsc
R=golang-codereviews, gobot, rsc, josharian, iant, bradfitz
CC=golang-codereviews
https://golang.org/cl/69320043

11 years agocrypto/tls: split connErr to avoid read/write races.
Adam Langley [Mon, 3 Mar 2014 14:01:44 +0000 (09:01 -0500)]
crypto/tls: split connErr to avoid read/write races.

Currently a write error will cause future reads to return that same error.
However, there may have been extra information from a peer pending on
the read direction that is now unavailable.

This change splits the single connErr into errors for the read, write and
handshake. (Splitting off the handshake error is needed because both read
and write paths check the handshake error.)

Fixes #7414.

LGTM=bradfitz, r
R=golang-codereviews, r, bradfitz
CC=golang-codereviews
https://golang.org/cl/69090044

11 years agotest/run: add /usr/pkg/bin to PATH.
Shenghou Ma [Mon, 3 Mar 2014 07:16:15 +0000 (02:16 -0500)]
test/run: add /usr/pkg/bin to PATH.
perl is installed by pkgsrc to /usr/pkg/bin.

LGTM=iant
R=golang-codereviews, iant
CC=golang-codereviews
https://golang.org/cl/70630043

11 years agocmd/ld: fix warning on Plan 9
David du Colombier [Mon, 3 Mar 2014 07:14:27 +0000 (08:14 +0100)]
cmd/ld: fix warning on Plan 9

warning: src/cmd/ld/pcln.c:184 more arguments than format INT

LGTM=iant
R=golang-codereviews, iant
CC=golang-codereviews
https://golang.org/cl/69870047

11 years agonet/http: add Client.Timeout for end-to-end timeouts
Brad Fitzpatrick [Mon, 3 Mar 2014 04:39:20 +0000 (20:39 -0800)]
net/http: add Client.Timeout for end-to-end timeouts

Fixes #3362

LGTM=josharian
R=golang-codereviews, josharian
CC=adg, dsymonds, golang-codereviews, n13m3y3r
https://golang.org/cl/70120045

11 years agotag go1.2.1
Andrew Gerrand [Mon, 3 Mar 2014 02:22:13 +0000 (13:22 +1100)]
tag go1.2.1

LGTM=r
R=minux.ma, r
CC=golang-codereviews
https://golang.org/cl/70660043

11 years agomisc/makerelease: use windows installer resources from local goroot
Andrew Gerrand [Mon, 3 Mar 2014 01:50:29 +0000 (12:50 +1100)]
misc/makerelease: use windows installer resources from local goroot

This broke when we renamed the tool, and I missed this fix when I
fixed darwin last week.

LGTM=minux.ma, bradfitz
R=golang-codereviews, minux.ma, bradfitz
CC=golang-codereviews
https://golang.org/cl/70670043

11 years agodoc: document Go 1.2.1
Andrew Gerrand [Mon, 3 Mar 2014 00:26:18 +0000 (11:26 +1100)]
doc: document Go 1.2.1

LGTM=minux.ma
R=golang-codereviews, minux.ma
CC=golang-codereviews
https://golang.org/cl/69970047

11 years agonet: remove the dreg of solaris merge
Mikio Hara [Sun, 2 Mar 2014 22:09:28 +0000 (07:09 +0900)]
net: remove the dreg of solaris merge

Also enables netgo test on solaris.

LGTM=aram, jsing
R=golang-codereviews, dave, aram, jsing
CC=golang-codereviews
https://golang.org/cl/70300043

11 years agoruntime: make SIGSYS notifiable on FreeBSD
Mikio Hara [Sun, 2 Mar 2014 22:08:44 +0000 (07:08 +0900)]
runtime: make SIGSYS notifiable on FreeBSD

Update #7186

LGTM=iant
R=iant
CC=golang-codereviews
https://golang.org/cl/70490043

11 years agonet/http: ensure ConnState for StateNew fires before Server.Serve returns
Richard Crowley [Sun, 2 Mar 2014 04:32:42 +0000 (20:32 -0800)]
net/http: ensure ConnState for StateNew fires before Server.Serve returns

The addition of Server.ConnState provides all the necessary
hooks to stop a Server gracefully, but StateNew previously
could fire concurrently with Serve exiting (as it does when
its net.Listener is closed). This previously meant one
couldn't use a WaitGroup incremented in the StateNew hook
along with calling Wait after Serve. Now you can.

Update #4674

LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/70410044

11 years agoA+C: Richard Crowley (individual CLA)
Brad Fitzpatrick [Sun, 2 Mar 2014 04:26:38 +0000 (20:26 -0800)]
A+C: Richard Crowley (individual CLA)

Generated by addca.

R=gobot
CC=golang-codereviews
https://golang.org/cl/70470043

11 years agosyscall: workaround Dragonfly BSD kernel exec bug
Shenghou Ma [Sat, 1 Mar 2014 23:56:50 +0000 (18:56 -0500)]
syscall: workaround Dragonfly BSD kernel exec bug
See also CL 4259056 for FreeBSD.

Test program:
// exec.go
package main
import (
        "log"
        "os"
        "os/exec"
        "runtime"
)
func main() {
        path := runtime.GOROOT() + "/src/pkg/net/http/cgi/testdata"
        cmd := &exec.Cmd{
                Path:   "test.cgi",
                Args:   []string{path + "/test.cgi"},
                Dir:    path
                Stdout: os.Stdout}
        if err := cmd.Start(); err != nil {
                log.Fatal(err)
        }
        if err := cmd.Wait(); err != nil {
                log.Fatal(err)
        }
}

$ go run exec.go
2014/03/01 15:52:41 fork/exec test.cgi: argument list too long

LGTM=iant
R=rsc, iant
CC=golang-codereviews
https://golang.org/cl/69970044

11 years agosync/atomic: skip broken tests on freebsd/arm and netbsd/arm
Dave Cheney [Sat, 1 Mar 2014 21:30:45 +0000 (08:30 +1100)]
sync/atomic: skip broken tests on freebsd/arm and netbsd/arm

Update #7338

The nil deref tests are currently failing on the *bsd/arm platforms. In an effort to avoid the build deteriorating further I would like to skip these tests on freebsd/arm and netbsd/arm.

LGTM=bradfitz, minux.ma
R=golang-codereviews, bradfitz, minux.ma
CC=golang-codereviews
https://golang.org/cl/69870045

11 years agoruntime: small Native Client fixes
Dave Cheney [Sat, 1 Mar 2014 00:13:29 +0000 (11:13 +1100)]
runtime: small Native Client fixes

cgocall.c: define the CBARGS macro for GOARCH_amd64p32. I don't think the value of this macro will ever be used under nacl/amd64p32 but it is required to compile even if cgo is not used.

hashmap.goc: amd64p32 uses 32bit words.

LGTM=iant
R=rsc, iant
CC=golang-codereviews
https://golang.org/cl/69960044

11 years agodoc: add more go1.3.txt items, sort.
Brad Fitzpatrick [Fri, 28 Feb 2014 22:17:33 +0000 (14:17 -0800)]
doc: add more go1.3.txt items, sort.

LGTM=r
R=r
CC=golang-codereviews
https://golang.org/cl/70120044

11 years agonet/http: de-flake ConnState test
Brad Fitzpatrick [Fri, 28 Feb 2014 21:27:36 +0000 (13:27 -0800)]
net/http: de-flake ConnState test

LGTM=josharian
R=golang-codereviews, josharian
CC=golang-codereviews
https://golang.org/cl/70270043

11 years agonet/http: add Server.ErrorLog; log and test TLS handshake errors
Brad Fitzpatrick [Fri, 28 Feb 2014 20:12:51 +0000 (12:12 -0800)]
net/http: add Server.ErrorLog; log and test TLS handshake errors

Fixes #7291

LGTM=agl
R=golang-codereviews, agl
CC=agl, golang-codereviews
https://golang.org/cl/70250044

11 years agocmd/ld: fix misgenerated pcln file numbers
Josh Bleecher Snyder [Fri, 28 Feb 2014 19:08:32 +0000 (11:08 -0800)]
cmd/ld: fix misgenerated pcln file numbers

The pcln file number was being encoded incorrectly. The recorded delta was always against -1, not against the previous value.

Update #7369

This CL fixes the bad DWARF file numbers. It does not, however, fix the gdb continue-to-end bug.

LGTM=iant
R=rsc, minux.ma, iant
CC=golang-codereviews, graham
https://golang.org/cl/68960046