Both gc and gccgo always checked this for constant
expressions but the spec only mentions run-time
exceptions.
This CL also requires that constant divisors
must not be zero in non-constant integer expressions:
This is consistent with the spirit of the most
recent changes and it is consistent with constant
expressions. We don't want to specify the effect for
non-integer expressions (f/0.0 where f is a float or
complex number) because there the result f/g is not
further specified if a non-constant g is 0.
R=r, rsc, iant, ken, andybalholm, iant
CC=golang-dev
https://golang.org/cl/6710045
This is a language change: Until now, the spec required run-
time panics for some of these errors. Note that gc and gccgo
implemented this inconsistently, and that both compilers already
reported compile-time errors in some cases. This change makes
make() behave along the same vein as index expressions.
This addresses the spec aspect of issue 4085.
R=r, rsc, iant, ken
CC=golang-dev
https://golang.org/cl/6725053
At the moment, gc and gccgo report compile-
time errors for certain constant indexes that
are out of bounds. The spec however requests
a run-time panic for out-of-bounds indexes
(http://tip.golang.org/ref/spec#Indexes).
Document the status quo.
Fixes#4231.
R=r, rsc, iant, ken
CC=golang-dev
https://golang.org/cl/6699048
Proposed new text to make matters clearer. The existing text was
unclear about the state of result parameters when panicking.
R=golang-dev, iant
CC=golang-dev
https://golang.org/cl/6653047
0. windows uses all.bat instead of ./all.bash
1. correct expected all.bash output
2. mention you need to use an application specific password
if you're using 2-step verification
3. note you can edit files included in CL by 'hg change NNNN'
or 'hg file'
R=golang-dev, adg, r
CC=golang-dev
https://golang.org/cl/6615060
Fixes#3733Fixes#2149
Updated Syntax
Added part3.go example program
Added part3-errorhandling.go example program
Improved wording in some places
R=golang-dev, adg, minux.ma
CC=golang-dev
https://golang.org/cl/6636048
It's already there but only in the "for instance" and so not
clear enough: deferred functions run after
the result parameters are updated.
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/6631058
Mercurial has supported environment variables in hgrc files since
version 1.4 (released November 2009).
R=golang-dev, dave, minux.ma
CC=golang-dev
https://golang.org/cl/6619067
For golang.org I intend to rewrite the jquery link in godoc.html
to point to the Google-hosted jquery.js.
R=dsymonds, minux.ma
CC=golang-dev
https://golang.org/cl/6589071
Also: Be explicit what operator means with respect to conversion types.
The parenthesis requirement is a language change. At the moment,
literal function types in conversions that cannot possibly be
followed by a '(' don't need parentheses. For instance:
func(int)int(x) -> same as (func(int)int)(x)
func()()(x) -> same as (func())(x)
but:
func(int)(x) -> could be func(int)x {...}
Fixes#4109.
R=rsc, r, iant, ken, iant
CC=golang-dev
https://golang.org/cl/6584065
Link to the "installing from source" docs instead of the "installing" docs.
Remind would-be hacker to switch to the default branch from the release branch.
R=rsc
CC=golang-dev
https://golang.org/cl/6559043
Also: Adjust prose in Conversions section
to be consistent.
This is a backward-compatible syntax change.
For a discussion see issue 2568.
Fixes#2568.
Fixes#4123.
R=golang-dev, r, iant, rsc
CC=golang-dev
https://golang.org/cl/6572049
The assembly offsets were converted mechanically using
code.google.com/p/rsc/cmd/asmlint. The instruction
changes were done by hand.
Fixes#2188.
R=iant, r, bradfitz, remyoudompheng
CC=golang-dev
https://golang.org/cl/6550058
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
https://golang.org/cl/6555053
When I was a lad (and well past), users were in /usr;
now they're somewhere else, I'm told.
Kids today.
Fixes#4122.
R=golang-dev, dsymonds, rsc
CC=golang-dev
https://golang.org/cl/6552060
Function and method calls are valid expression statements,
but calling certain built-in functions is not permitted.
Enumerate the built-ins.
Also: unsafe.Offsetof permits parenthesized selectors as
arguments.
This is simply documenting existing compiler behavior
(both gc and gccgo agree).
R=r, rsc, iant, ken
CC=golang-dev
https://golang.org/cl/6498138
Both gc and gccgo permit calls such as unsafe.Sizeof(42). The
spec only permits variable arguments. This is a (backward-compatible)
spec change reflecting the status quo. Seems preferrable over
restricting the compilers.
R=r, rsc, iant, ken
CC=golang-dev
https://golang.org/cl/6494140
Strings happen to be represented similarly to
byte slices internally, but they don't quite
behave like them: While strings can be indexed,
sliced, and have their len() taken like byte
slices, string elements are not addressable,
make() and cap() is not supported, range loops
operate differently, and they are immutable (and
thus behave like values rather then references).
Fixes#4018.
R=r, rsc, iant, ken
CC=golang-dev
https://golang.org/cl/6503116
This change messes with anchor links. It obscures the item being linked to.
I don't see a way around it. Undoing for now.
Fixes#4071.
««« original CL description
doc css: topbar sticks to the top of large windows.
Rationale: for large screens, the convenience of not having to scroll
to the top of the page to do a search outweighs having less vertical
space.
Tested with Chrome, Firefox, Safari with various window and text sizes.
R=adg
CC=gobot, golang-dev
https://golang.org/cl/6493071
Committer: Andrew Gerrand <adg@golang.org>
»»»
R=golang-dev, r, dsymonds
CC=golang-dev
https://golang.org/cl/6488121
The (and not) arguably sounds like it is trying to say something - and not what?.
Just an idea, won't be hurt if it gets rejected.
R=gri, dsymonds, r
CC=golang-dev
https://golang.org/cl/6498115
Rationale: for large screens, the convenience of not having to scroll
to the top of the page to do a search outweighs having less vertical
space.
Tested with Chrome, Firefox, Safari with various window and text sizes.
R=adg
CC=gobot, golang-dev
https://golang.org/cl/6493071
A race between
a = "hello, world"
and
print(a)
is not guaranteed to print either "hello, world" or "".
Its behaviour is undefined.
Fixes#4039.
R=rsc
CC=dvyukov, gobot, golang-dev, r
https://golang.org/cl/6489075
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
https://golang.org/cl/6490091
cgo[1-4].go, go1.go couldn't be tested now
(cgo[1-4].go can only be tested when cgo is enabled, go1.go
contain a list of filenames in the current directory)
R=golang-dev, alex.brainman, rsc
CC=golang-dev
https://golang.org/cl/6218048
No changes to the meaning, just clearer language and more
examples, including illegal rune and string literals.
In particular, "character literal" and "character constant"
are now called "rune literal" and "rune constant" and the
word "character" always refers to the source text, not
program values.
R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/6448137
- point out difference between selectors and qualified identifiers
- differentiate between illegal selectors and run-time panics
- use "indirect" as opposed to "dereference" consistently
- add extra links
Fixes#3779.
R=r, rsc, iant, ken
CC=golang-dev
https://golang.org/cl/6326059
- receiving from a closed channel returns immediately
- in the ,ok form, the 2nd result is of type bool, not
just boolean (gc and ggcgo agree).
Per dsymonds' suggestion.
R=r, rsc, ken, iant, dsymonds
CC=golang-dev
https://golang.org/cl/6333057
The '...' was missing on a call to fmt.Sprintf() which would result in
the slice being printed instead of the correct result.
R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/5967051
Another attempt at https://golang.org/cl/5754088.
Before, we only consulted $GOBIN for source code
found in $GOROOT, but that's confusing to explain
and less useful. The new behavior lets users set
GOBIN=$HOME/bin and have all go-compiled binaries
installed there.
Tested a few cases in test.bash.
Ran all.bash with and without $GOBIN and it works.
Even so, I expect it to break the builders,
like it did last time, we can debug from there.
Fixes#3269 (again).
Fixes#3396.
Fixes#3397.
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/5927051
Also explain the situation with recursive String methods more accurately,
and clean up the code now that the fmt package is more careful.
R=golang-dev, minux.ma, bradfitz
CC=golang-dev
https://golang.org/cl/5907047
Compare and explain go, go cmd, and go tool cmd.
The situation is not concisely explained elsewhere in the main docs.
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/5906043
Delete () from function names and change the reference to some
functions to the correct term, methods.
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/5874063
The old name, automatically generated, was ludicrously verbose.
Also clean up an example to use time.Second.
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/5876051