cmd/yacc: always import fmt, safely
The parser depends on it but the client might not import it, so make sure it's there.
Fixes issue 4038.

R=golang-dev, rsc
CC=golang-dev
http://codereview.appspot.com/6497094
cgo: use debug data section for ELF

When generating enums use the debug data section instead of the
DWARF debug info, if it is available in the ELF file. This allows
mkerrors.sh to work correctly on OpenBSD/386 and NetBSD/386.

Fixes issue 2470.

R=golang-dev, minux.ma
CC=golang-dev
http://codereview.appspot.com/6495090
runtime: arm: abort if hardware floating point missing

Fixes issue 3911.

Requires CL 6449127.

dfc@qnap:~$ ./runtime.test
runtime: this CPU has no floating point hardware, so it cannot run
this GOARM=7 binary. Recompile using GOARM=5.

R=rsc, minux.ma
CC=golang-dev
http://codereview.appspot.com/6442109
cmd/6g: avoid taking the address of slices unnecessarily.

The main case where it happens is when evaluating &s[i] without
bounds checking, which usually happens during range loops (i=0).

This allows registerization of the corresponding variables,
saving 16 bytes of stack frame for each such range loop and a
LEAQ instruction.

R=golang-dev, rsc, dave
CC=golang-dev, remy
http://codereview.appspot.com/6497073
faq: another way to solve the closure/variable/range complaint
It's easier just to declare a new variable.

R=golang-dev, bradfitz
CC=golang-dev
http://codereview.appspot.com/6501103
cmd/yacc: allow leading underscore in token name
Fixes issue 4037.

R=golang-dev, rsc
CC=golang-dev
http://codereview.appspot.com/6488093
net,mime: Minor corrections to documentation comments.

R=r
CC=dsymonds, gobot, golang-dev
http://codereview.appspot.com/6495085

Committer: Rob Pike <r@golang.org>
spec: an initial BOM can be ignored
After further deliberation, let's back down to the Unicode proposal.
Ignoring aBOMinations anywhere means that things like
        grep unsafe *.go
might fail because there's a BOM in the middle: unBOMsafe.

R=golang-dev, rsc, 0xjnml, gri, bradfitz
CC=golang-dev
http://codereview.appspot.com/6490091
syscall: Test SCM credentials on Linux.

This test was previously removed in 087c6e15702e.

R=bradfitz, rsc, mikioh.mikioh
CC=golang-dev
http://codereview.appspot.com/6506061

Committer: Brad Fitzpatrick <bradfitz@golang.org>
faq: mercurial vs. git
Fixes issue 4052.

R=golang-dev, bradfitz, iant, rsc
CC=golang-dev
http://codereview.appspot.com/6490092
go/scanner: skip first character if it's a BOM

R=r
CC=golang-dev
http://codereview.appspot.com/6490095
faq: go does not have duck typing

R=golang-dev, 0xjnml, iant, adonovan, aram
CC=golang-dev
http://codereview.appspot.com/6500092
go/scanner: add missing BOM test

R=r
CC=golang-dev
http://codereview.appspot.com/6498106
text/scanner: skip first character if it's a BOM

R=r
CC=golang-dev
http://codereview.appspot.com/6493097
exp/locale/collate: switch from DUCET to CLDR for the default root table.

R=r
CC=golang-dev
http://codereview.appspot.com/6499079
exp/locale/collate: added indices to builder for reusing blocks between locales.
Refactored build + buildTrie into build + buildOrdering.
Note that since the tailoring code is not checked in yet, all tailorings are identical
to root.  The table therefore should not and does not grow at this point.

R=r
CC=golang-dev
http://codereview.appspot.com/6500087
net: change cname lookup test target to iana.org

It might be meaningful, and stable than others.

R=golang-dev, agl
CC=golang-dev
http://codereview.appspot.com/6499091
cmd/8g: import componentgen from 6g.

This makes the compilers code more similar and improves
code generation a lot.

The number of LEAL instructions generated for cmd/go drops
by 60%.

% GOARCH=386 go build -gcflags -S -a cmd/go | grep LEAL | wc -l
Before:       89774
After:        47548

benchmark                              old ns/op    new ns/op    delta
BenchmarkAppendFloatDecimal                  540          444  -17.78%
BenchmarkAppendFloat                        1160         1035  -10.78%
BenchmarkAppendFloatExp                     1060          922  -13.02%
BenchmarkAppendFloatNegExp                  1053          920  -12.63%
BenchmarkAppendFloatBig                     1773         1558  -12.13%
BenchmarkFormatInt                         13065        12481   -4.47%
BenchmarkAppendInt                         10981         9900   -9.84%
BenchmarkFormatUint                         3804         3650   -4.05%
BenchmarkAppendUint                         3506         3303   -5.79%
BenchmarkUnquoteEasy                         714          683   -4.34%
BenchmarkUnquoteHard                        5117         2915  -43.03%

Update issue 1914.

R=nigeltao, rsc, golang-dev
CC=golang-dev, remy
http://codereview.appspot.com/6489067
crypto/rand: zero length reads shouldn't crash on Windows.

R=golang-dev, dave
CC=golang-dev
http://codereview.appspot.com/6496099
crypto/rand: typo fix from a69e30463bf4

R=golang-dev
CC=golang-dev
http://codereview.appspot.com/6497106