cmd/gc: fix a spurious -u compile error

Fixes issue 4082.

R=dsymonds
CC=golang-dev
http://codereview.appspot.com/6545055
debug/pe: add symbol support

Add support for processing the COFF symbol table.

R=alex.brainman
CC=golang-dev
http://codereview.appspot.com/6551045
cmd/cgo: use debug data for enums on windows

Use the debug data for enums on windows.

Fixes issue 4120.

R=alex.brainman
CC=golang-dev
http://codereview.appspot.com/6545047
reflect: add Type.ConvertibleTo, Value.Convert (API CHANGE)

Fixes issue 4047.

R=iant, r
CC=golang-dev
http://codereview.appspot.com/6500065
cmd/5g: fix register opt bug

The width was not being set on the address, which meant
that the optimizer could not find variables that overlapped
with it and mark them as having had their address taken.
This let to the compiler believing variables had been set
but never used and then optimizing away the set.

Fixes issue 4129.

R=ken2
CC=golang-dev
http://codereview.appspot.com/6552059
spec: a couple of minor tweaks to the wording of the import section
- remove ambiguous 'it'
- use a lower-case PackageName in the example

R=golang-dev, dsymonds
CC=golang-dev
http://codereview.appspot.com/6552057
cmd/gc: fix use of nil interface, slice

Fixes issue 3670.

R=ken2
CC=golang-dev
http://codereview.appspot.com/6542058
effective_go: s/usr/home/ in example
When I was a lad (and well past), users were in /usr;
now they're somewhere else, I'm told.
Kids today.

Fixes issue 4122.

R=golang-dev, dsymonds, rsc
CC=golang-dev
http://codereview.appspot.com/6552060
cmd/5g: fix build

R=rsc, r
CC=golang-dev
http://codereview.appspot.com/6552061
cmd/6g: fix internal error with SSE registers.

Revision 63f7abcae015 introduced a bug caused by
code assuming registers started at X5, not X0.

Fixes issue 4138.

R=rsc
CC=golang-dev, remy
http://codereview.appspot.com/6558043
test: expand run.go's errorcheck, make clear which bugs run

Today, if run.go doesn't understand a test header line it just ignores
the test, making it too easy to write or edit tests that are not actually
being run.

- expand errorcheck to accept flags, so that bounds.go and escape*.go can run.
- create a whitelist of skippable tests in run.go; skipping others is an error.
- mark all skipped tests at top of file.

Update issue 4139.

R=golang-dev, bradfitz
CC=golang-dev
http://codereview.appspot.com/6549054
doc: Remove obsolete references to weekly releases.

This was misleading and often confusing for new users.

Leaving the actual weekly release history page for historical reference.

R=golang-dev, rsc, adg
CC=golang-dev
http://codereview.appspot.com/6555053

Committer: Andrew Gerrand <adg@golang.org>
pkg/go/ast: Avoid doing zero-length writes to the fd.

After each line, ast.Print would do a zero-length write,
which would hit the boundary condition on Plan 9 when
reading over pipes (since message boundaries are
preserved). This change makes sure we only do positive-
length writes.

R=rsc, rminnich, dave, r
CC=golang-dev
http://codereview.appspot.com/6558046

Committer: Rob Pike <r@golang.org>
net/http: use r.Body.Close to close connection during TestServeFileFromCWD

Fixes issue 3917.

R=golang-dev, bradfitz
CC=golang-dev
http://codereview.appspot.com/6553061
time: prepare for 64-bit ints

The code was trying to interpret a uint32 n as a signed quantity
and then store it in an int. For this, int(n) currently works, but when
int becomes 64 bits one must write int(int32(n)) instead, to get
the 32-bit sign extension.

Update issue 2188.

R=golang-dev, nigeltao
CC=golang-dev
http://codereview.appspot.com/6551068
text/template: allow .Field access to parenthesized expressions

Change the grammar so that field access is a proper operator.
This introduces a new node, ChainNode, into the public (but
actually internal) API of text/template/parse. For
compatibility, we only use the new node type for the specific
construct, which was not parseable before. Therefore this
should be backward-compatible.

Before, .X.Y was a token in the lexer; this CL breaks it out
into .Y applied to .X. But for compatibility we mush them
back together before delivering. One day we might remove
that hack; it's the simple TODO in parse.go/operand.

This change also provides grammatical distinction between
        f
and
        (f)
which might permit function values later, but not now.

Fixes issue 3999.

R=golang-dev, dsymonds, gri, rsc, mikesamuel
CC=golang-dev
http://codereview.appspot.com/6494119
syscall: prepare for 64-bit ints

This CL fixes code that incorrectly assumes that int is 32 bits wide.
Specifically, the socketpair system call expects a pointer to a pair
of int32s, not a pair of ints. Fix this inside the wrappers without
changing the APIs.

Update issue 2188.

R=golang-dev, r
CC=golang-dev
http://codereview.appspot.com/6552063
test: minor fixes in run and testlib

Can tell this doesn't get run very often, but it is still important
for when you've broken everything else.

R=golang-dev, r
CC=golang-dev
http://codereview.appspot.com/6547065
test: prepare for 64-bit ints

Minor tweaks to avoid assuming that int is always 32 bits.

Update issue 2188.

R=golang-dev, r
CC=golang-dev
http://codereview.appspot.com/6553062
exp/locale/collate/tools/colcmp: implementation of colcmp tool used for comparing
various implementation of collation.  The tool provides commands for soring,
regressing one implementation against another, and benchmarking.
Currently it includes collation implementations for the Go collator, ICU,
and one using Darwin's CoreFoundation framework.
To avoid building this tool in the default build, the colcmp tag has been
added to all files. This allows other tools/colcmp in this directory (e.g. it may make
sense to move maketables here) to be put in this directory as well.

R=r, rsc, mpvl
CC=golang-dev
http://codereview.appspot.com/6496118