Age | Commit message (Collapse) | Author | Files | Lines |
|
Fixes issue 371.
R=ken2
http://codereview.appspot.com/164091
|
|
did not test 386, but should work
shouldnt matter if copy is not used
R=rsc
http://codereview.appspot.com/156055
|
|
Fixes issue 31.
To try the fix before the next release:
hg pull -u
R=r1, r
http://codereview.appspot.com/154058
|
|
fix the usage message.
R=rsc
CC=go-dev
http://go/go-review/1016033
|
|
R=ken
OCL=35899
CL=35899
|
|
also eliminate float80 dregs
R=ken
OCL=35894
CL=35896
|
|
because they are in package runtime.
another step to enforcing package boundaries.
R=r
DELTA=732 (114 added, 93 deleted, 525 changed)
OCL=35811
CL=35824
|
|
turn off testdclstack and "not used" errors
when there are syntax errors.
BUG=2181825
R=ken
OCL=35606
CL=35608
|
|
references during the parsing of :=. the base
problem is that when reading
a,b,c,d
the parser makes those refer to existing variables,
which might create a few stub top-level ones
for undefined names, but then if a := is the next
token, we need to undo those stubs.
this was causing problems in multifile packages
in which one file used a := variable named rpc
and the other imported a package named rpc.
R=ken
OCL=35446
CL=35446
|
|
R=ken
OCL=34859
CL=34865
|
|
R=ken
OCL=34732
CL=34756
|
|
universe block names.
BUG=2097244
R=ken
OCL=34295
CL=34473
|
|
R=ken
OCL=34471
CL=34471
|
|
R=ken
OCL=34465
CL=34470
|
|
R=ken
OCL=34339
CL=34341
|
|
import "fmt"
var fmt = 1
R=ken
OCL=33556
CL=33561
|
|
in the presence of yacc lookahead.
better but still not perfect
R=ken
OCL=33541
CL=33541
|
|
no types yet.
R=ken
OCL=33142
CL=33146
|
|
R=ken
OCL=33063
CL=33095
|
|
still to do:
* initializer cycle detection
* nicer error for type checking cycles
R=ken
OCL=32855
CL=32880
|
|
collapse a lot of duplication in dcl.c
switch to NodeList* from Dcl*
R=ken
OCL=32770
CL=32770
|
|
consts in the same factored block
const (
X = Y;
Y = 2;
)
R=ken
OCL=31782
CL=31782
|
|
introduce NodeList* type in compiler to replace OLIST.
this clarifies where lists can and cannot occur.
list append and concatenation are now cheap.
the _r rules are gone from yacc.
rev and unrev are gone.
no more lists of lists.
the representation of assignments is a bit clunkier.
split into OAS (1=1) and OAS2 (2 or more on one side).
delete dead chanrecv3 code.
delay construction of func types.
R=ken
OCL=31745
CL=31762
|
|
R=ken
OCL=31149
CL=31149
|
|
R=ken
OCL=30889
CL=30889
|
|
R=ken
OCL=30760
CL=30779
|
|
R=ken
OCL=30768
CL=30768
|
|
new flag -A enables it during mkbuiltin.
avoids mysterious errors in programs
that refer to any accidentally.
R=ken
OCL=30763
CL=30763
|
|
this assumes that embedded newlines are
legal in back-quote strings.
R=r
OCL=30502
CL=30502
|
|
instead of having to double the type and statement grammars.
R=ken
OCL=29987
CL=29998
|
|
* no longer distinguishes const, var, type, package names.
* all the predefined names are not tokens anymore.
R=ken
OCL=29326
CL=29985
|
|
* use new Make.$GOARCH files in gobuild.
* rename 6ar to arch-generic gopack.
* place objects in $GOROOT/pkg/$GOOS_$GOARCH
(makes cross-compiling easier, and no one
ever types these paths by hand anyway).
R=r
DELTA=29 (6 added, 8 deleted, 15 changed)
OCL=29923
CL=29967
|
|
R=r
DELTA=25 (25 added, 0 deleted, 0 changed)
OCL=29875
CL=29875
|
|
take 2
R=ken
OCL=29304
CL=29306
|
|
*** Reason for rollback ***
too many files included
*** Original change description ***
simplifying grammar: delete LBASETYPE and LACONST
R=ken
OCL=29303
CL=29303
|
|
R=ken
OCL=29300
CL=29302
|
|
use the actual go source instead.
R=r
DELTA=90 (66 added, 18 deleted, 6 changed)
OCL=28708
CL=28719
|
|
new type equality restrictions
better handling of renamed packages
"sys" is no longer available to programs
R=ken
OCL=28553
CL=28578
|
|
R=r
OCL=28569
CL=28573
|
|
so that 6l can discard strings used by dead code.
also, for short strings, generate DUPOK global
symbols so that references to, say, "%s: %s" in
multiple files result in only a single symbol.
R=ken
OCL=28361
CL=28361
|
|
R=r
OCL=27293
CL=27293
|
|
store only the original import path string (+ .a)
if 6g resolves it to an archive file.
let 6l re-resolve the .a at link time.
this lets libraries build against an archive
in the current directory but get used
against an installed archive.
R=r
OCL=27244
CL=27244
|
|
this avoids problems people have run into with
multiple closures in the same package.
when preparing filename, only cut off .go, not .anything.
this fixes a bug tgs ran into with foo.pb.go and foo.go
in the same package.
also turn bad identifier chars from filename into
underscores: a-b.pb.go => a_b_pb
R=ken
OCL=27050
CL=27050
|
|
package main
func main() { func(){}() + + }
x.go:2: syntax error near _f001
becomes
x.go:2: syntax error near func
R=ken
OCL=27047
CL=27047
|
|
signature generation) into gc.
R=ken
OCL=26933
CL=26933
|
|
R=ken
OCL=26929
CL=26929
|
|
R=ken
OCL=26914
CL=26914
|
|
in favor of the lib9 compatibility layer. no need for two.
now that mycreate is gone, .6 files are 0644 not 0755.
TBR=r
OCL=26679
CL=26679
|
|
various bug fixes and tests involving constants.
test/const1.go is the major new test case.
R=ken
OCL=26216
CL=26224
|
|
runtime not finished.
R=r
OCL=26217
CL=26217
|