Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
R=rsc
CC=golang-dev
http://codereview.appspot.com/1677049
|
|
various cleanup, deleting unused code
R=ken2
CC=golang-dev
http://codereview.appspot.com/1663041
|
|
Fixes issue 692.
R=ken2
CC=golang-dev
http://codereview.appspot.com/1092041
|
|
complex DATA statement fo
initialization of complex variables.
R=rsc
CC=golang-dev
http://codereview.appspot.com/634045
|
|
Fixes issue 529.
R=ken2
CC=golang-dev
http://codereview.appspot.com/186215
|
|
Fixes issue 402.
R=ken2
CC=golang-dev
http://codereview.appspot.com/186214
|
|
Fixes issue 384.
R=ken2
http://codereview.appspot.com/179061
|
|
Fixes bug 292.
R=ken2
http://codereview.appspot.com/164093
|
|
* check for struct literal assignment to private fields.
* record, fix crash involving parallel map assignment.
* avoid infinite recursion in exportassignok.
* make floating point bounds check precise.
* avoid crash on invalid receiver.
* add context to error about implicit assignment.
Fixes issue 86.
Fixes issue 88.
Fixes issue 158.
Fixes issue 174.
Fixes issue 201.
Fixes issue 204.
R=ken2
http://codereview.appspot.com/154144
|
|
* bug211
* embedded interfaces with lowercase methods
* var _ = f() at top level
R=ken
OCL=35898
CL=35898
|
|
hook up to 8g and 5g too.
R=ken
OCL=34768
CL=34768
|
|
init function context.
also moved composit literal
code from walk.c to sinit.c
R=rsc
OCL=34503
CL=34503
|
|
R=rsc
OCL=34462
CL=34462
|
|
plateau - more to come
R=rsc
OCL=34413
CL=34413
|
|
R=rsc
OCL=34090
CL=34090
|
|
R=rsc
DELTA=444 (179 added, 177 deleted, 88 changed)
OCL=33847
CL=33849
|
|
R=ken
OCL=33063
CL=33095
|
|
still to do:
* initializer cycle detection
* nicer error for type checking cycles
R=ken
OCL=32855
CL=32880
|
|
typecheck.c is now responsible for all type checking
except for assignment and function argument "..."
R=ken
OCL=32661
CL=32667
|
|
R=ken
OCL=32421
CL=32421
|
|
R=ken
OCL=32261
CL=32261
|
|
R=ken
OCL=31890
CL=31890
|
|
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
|
|
walkstate -> walkstmt
walktype -> walkexpr; stmts moved to walkstmt
walktype and friends have a final Node **init
argument that can have side effects appended,
making it more explicit when they do and do not happen.
this replaces the old global addtop and addtotop.
delete switch map and interface conversion cases
(dropped from the language months ago).
R=ken
OCL=31465
CL=31468
|
|
do not bother warning about marks left
on stack after syntax errors.
leave OCONV nodes in tree to avoid type errors
arising from multiple walks.
R=ken
OCL=30639
CL=30662
|
|
in complex literals. side effect is
fix of error in initializerr.go
R=r
OCL=29667
CL=29667
|
|
R=r
OCL=29544
CL=29544
|
|
R=r
OCL=29419
CL=29419
|
|
R=r
OCL=29358
CL=29358
|
|
structtype{a:1, a:2}
maptypetype{"xx":1, "xx":2}
arraytypetype{5:1, 5:2}
2. bug in registerization concerning
alias of a struct and one of its elements
3. code optimization of struct.field
(which exposed bug in 2)
R=r
OCL=29315
CL=29315
|
|
structure and array literals
R=r
OCL=29190
CL=29190
|