Russ Cox
07244f7c80
add composite literal ( ) syntax.
...
warn about composite literal { } syntax.
R=ken
OCL=25018
CL=25023
2009-02-13 14:48:16 -08:00
Russ Cox
20b6de135b
fix build
...
TBR=r
OCL=25021
CL=25021
2009-02-13 14:35:36 -08:00
Robert Griesemer
920ab67b4c
label declarations not handled properly
...
R=rsc
DELTA=27 (27 added, 0 deleted, 0 changed)
OCL=25015
CL=25015
2009-02-13 13:42:43 -08:00
Robert Griesemer
8e7873672e
- fixed bugs related to the empty statement
...
(now in sync with the spec and with 6g)
- fixed incorrect logging statement in gds
R=r
OCL=24970
CL=24970
2009-02-12 16:06:21 -08:00
Robert Griesemer
6f8df7aa3e
- syntax for composite literals use () instead of {}
...
- do not permit + for array concatenation anymore
(not implemented and not a good idea)
- document that unsafe function results are compile time constants
- fixed minor typos
DELTA=41 (7 added, 11 deleted, 23 changed)
OCL=24899
CL=24927
2009-02-11 21:57:15 -08:00
Russ Cox
5f4f5647ef
require type assertions when narrowing.
...
R=ken
OCL=24350
CL=24914
2009-02-11 17:57:29 -08:00
Russ Cox
49e2087848
insert type assertions when narrowing.
...
R=r
OCL=24349
CL=24913
2009-02-11 17:55:16 -08:00
Russ Cox
7cd24361bd
fix gc bug. i think this is tgs's second bug.
...
i stumbled across it in all.bash.
TBR=r
OCL=24912
CL=24912
2009-02-11 17:54:03 -08:00
Robert Griesemer
38c232fe37
- language for embedded interfaces (as discussed this morning)
...
- fixed a syntax error
R=r
DELTA=17 (15 added, 0 deleted, 2 changed)
OCL=24876
CL=24889
2009-02-11 15:09:15 -08:00
Robert Griesemer
52c02c2d5d
Added section on package unsafe:
...
- contains a (proposed) constant Maxalign
- contains some text re" alignment guarantees
R=ken,r
DELTA=97 (94 added, 1 deleted, 2 changed)
OCL=24791
CL=24871
2009-02-11 13:46:30 -08:00
Rob Pike
0c4010a747
change DirInfo->dirInfo now that 6g export bug is fixed
...
R=rsc
DELTA=4 (0 added, 0 deleted, 4 changed)
OCL=24788
CL=24805
2009-02-10 16:44:04 -08:00
Rob Pike
6017895659
drop the os_ prefix on the file names in os. os_test.go can stay.
...
R=rsc
DELTA=793 (392 added, 392 deleted, 9 changed)
OCL=24777
CL=24804
2009-02-10 16:40:06 -08:00
Russ Cox
73dd4a37f9
fix export bug Rob tripped over.
...
the lexer is already hiding names,
so this clumsy hack is no longer necessary.
R=ken
OCL=24783
CL=24783
2009-02-10 13:57:31 -08:00
Rob Pike
00b3d48f13
Make Readdirnames work properly on Linux.
...
Refactor so Readdir is portable code.
R=rsc
DELTA=192 (50 added, 130 deleted, 12 changed)
OCL=24770
CL=24772
2009-02-10 11:55:48 -08:00
Ian Lance Taylor
651972b31f
Implement unsafe.Alignof.
...
R=ken
DELTA=20 (19 added, 0 deleted, 1 changed)
OCL=24719
CL=24771
2009-02-10 11:46:26 -08:00
Rob Pike
d94c5aba12
Fix Readdirnames to behave properly if reading in little pieces. Requires storing some
...
state in the FD.
This is Darwin only. Next CL will make Readdir use Readdirnames to generate its files
and move Readdir into portable code, as well as fix Readdirnames for Linux.
R=rsc
DELTA=116 (79 added, 12 deleted, 25 changed)
OCL=24756
CL=24768
2009-02-10 11:27:45 -08:00
Robert Griesemer
668bf81b00
- removed obsolete comments
...
R=r
DELTA=2 (0 added, 1 deleted, 1 changed)
OCL=24755
CL=24760
2009-02-10 10:37:11 -08:00
Robert Griesemer
e08cc15251
Some real GDS functionality:
...
- directory listings w/ working links
- some links working in source code (most don't do the right thing yet)
- use of logging
R=r
OCL=24728
CL=24728
2009-02-09 21:05:14 -08:00
Rob Pike
2f147992b4
fix Getdirentries: base comes back in r2.
...
R=rsc
DELTA=3 (3 added, 0 deleted, 0 changed)
OCL=24727
CL=24727
2009-02-09 20:04:36 -08:00
Rob Pike
cad7a3aefc
simple accessors for Dir mode bits
...
R=rsc
DELTA=71 (71 added, 0 deleted, 0 changed)
OCL=24687
CL=24694
2009-02-09 12:50:54 -08:00
Rob Pike
a948fdd626
typo. this split-os building thing is frustrating.
...
R=rsc
OCL=24681
CL=24681
2009-02-09 11:25:47 -08:00
Rob Pike
aba4c75408
add Readdir: returns an array of Dir structures
...
R=rsc
DELTA=200 (176 added, 12 deleted, 12 changed)
OCL=24680
CL=24680
2009-02-09 11:24:35 -08:00
Rob Pike
c8d59c1fb2
fix int64/int error - build broken
...
R=gri
OCL=24678
CL=24678
2009-02-09 10:20:15 -08:00
Russ Cox
a81870badf
add error to catch 6g alignment bug.
...
the fix appears to be to align the
out struct on an 8 boundary, but that
is a bit involved.
R=ken
OCL=24657
CL=24657
2009-02-08 11:19:45 -08:00
Russ Cox
a6c59ce274
gc funarg return fix.
...
change type (to satisfy OAS) after nodarg:
nodarg uses offset from type too,
and must use correct offset.
R=ken
OCL=24656
CL=24656
2009-02-08 11:01:52 -08:00
Rob Pike
b5aba026f8
First pass at reading directories.
...
Syscall support.
Readdirnames returns array of strings of contents of directory.
R=rsc
DELTA=216 (201 added, 0 deleted, 15 changed)
OCL=24642
CL=24655
2009-02-08 10:18:50 -08:00
Rob Pike
6506148850
a few small cleanups
...
R=rsc
DELTA=21 (2 added, 2 deleted, 17 changed)
OCL=24638
CL=24654
2009-02-08 10:17:23 -08:00
Rob Pike
9526f3b841
use unsafe.Sizeof
...
R=rsc
DELTA=9 (3 added, 3 deleted, 3 changed)
OCL=24640
CL=24653
2009-02-08 10:16:32 -08:00
Rob Pike
8f2b774ee1
update sysimport.c for unsafe.Offset and Sizeof
...
R=ken
DELTA=2 (2 added, 0 deleted, 0 changed)
OCL=24643
CL=24643
2009-02-07 14:48:32 -08:00
Ken Thompson
56003374d3
change array padding in structures
...
to pad to size of element rather
than size of array.
R=r
OCL=24641
CL=24641
2009-02-07 13:31:34 -08:00
Ken Thompson
8a70545b57
unsafe.Sizeof and unsafe.Offsetof
...
R=r
OCL=24639
CL=24639
2009-02-07 12:34:45 -08:00
Rob Pike
bcf48076e5
fix up syscall for darwin after StringToBytes change
...
R=rsc
DELTA=30 (0 added, 18 deleted, 12 changed)
OCL=24628
CL=24628
2009-02-06 18:03:13 -08:00
Rob Pike
704bc9d5c9
portable stat for os
...
add name to os.FD
clean up some interfaces
R=rsc
DELTA=318 (231 added, 44 deleted, 43 changed)
OCL=24624
CL=24627
2009-02-06 17:54:26 -08:00
Rob Pike
69c41d7f5f
fstat used wrong system call, lstat used wrong type of name
...
R=rsc
DELTA=7 (4 added, 0 deleted, 3 changed)
OCL=24617
CL=24617
2009-02-06 17:10:30 -08:00
Robert Griesemer
d8a764cc7e
- removed todo and restriction from spec (closures)
...
- fixed typos, added a reminder for a todo
R=r
DELTA=23 (6 added, 4 deleted, 13 changed)
OCL=24611
CL=24615
2009-02-06 17:01:10 -08:00
Robert Griesemer
a85e06f302
bug: empty statement not properly recognized in conjunction w/ labels
...
R=r
DELTA=14 (14 added, 0 deleted, 0 changed)
OCL=24610
CL=24610
2009-02-06 16:45:37 -08:00
Ian Lance Taylor
1103d78c84
Recognize gccgo error messages:
...
func4.go:8:11: error: invalid operand for unary '&'
func4.go:9:8: error: invalid left hand side of assignment
R=rsc
DELTA=2 (0 added, 0 deleted, 2 changed)
OCL=24294
CL=24603
2009-02-06 15:57:02 -08:00
Robert Griesemer
9acd2a9731
snapshot:
...
- first stab at a Go Documentation Server (gds)
- various fixes to make initial version of gds work
R=r
OCL=24588
CL=24588
2009-02-06 15:26:30 -08:00
Rob Pike
ee9b5a15a1
powser cleanup.
...
- don't need *struct
- don't need item/rat both
- closures make the inner slaves easier
- delete some old BUG comments
powser2 is left mostly alone, for variety.
R=rsc
DELTA=134 (2 added, 20 deleted, 112 changed)
OCL=24579
CL=24581
2009-02-06 15:03:14 -08:00
Russ Cox
3e02987508
tgs's gc bug.
...
R=r
DELTA=10 (7 added, 0 deleted, 3 changed)
OCL=24577
CL=24577
2009-02-06 14:41:21 -08:00
Rob Pike
39d05ae808
add a trivial visitor method, just for fun
...
R=gri
DELTA=31 (30 added, 1 deleted, 0 changed)
OCL=24568
CL=24575
2009-02-06 14:32:09 -08:00
Russ Cox
0970c46863
closures - 6g support
...
R=ken
OCL=24501
CL=24566
2009-02-06 13:47:10 -08:00
Russ Cox
0f4f2a6183
closures - runtime and debugger support, test case
...
R=r
DELTA=257 (250 added, 1 deleted, 6 changed)
OCL=24509
CL=24565
2009-02-06 13:46:56 -08:00
Robert Griesemer
187cf78a7c
- preparation for setting up types
...
- moved Object, Type, Scope out of AST into symboltable
- moved universe into symboltable
- removed dead code
- fixed dependency computation (pretty -d filename.go)
- lots of cleanups
- removed tocken channel connection between parser and scanner
(was cute, but not really needed)
R=r
OCL=24545
CL=24545
2009-02-06 11:10:25 -08:00
Russ Cox
5e5476c2fe
6c: byte* - byte* should be int64, not int32.
...
R=ken
OCL=24507
CL=24507
2009-02-05 19:09:04 -08:00
Robert Griesemer
77ccfb090c
making go-spec conform with 6g:
...
- equality of struct types requires equality of field names
DELTA=4 (0 added, 1 deleted, 3 changed)
OCL=24478
CL=24487
2009-02-05 16:11:14 -08:00
Rob Pike
f95a11e27f
further pedagogy: a channel that satisfies the HTTP server interface
...
R=rsc
DELTA=18 (18 added, 0 deleted, 0 changed)
OCL=24482
CL=24484
2009-02-05 15:56:31 -08:00
Russ Cox
b0009bef20
bug064
...
make f(g()) work when g returns multiple
args with names different than f expects.
func swap(a, b int) (c, d int) {
return b, a
}
swap(swap(1,2))
R=ken
OCL=24474
CL=24476
2009-02-05 15:22:49 -08:00
Russ Cox
7a3877aa0c
take advantage of methods on funcs
...
R=r
DELTA=14 (0 added, 13 deleted, 1 changed)
OCL=24458
CL=24470
2009-02-05 15:09:08 -08:00
Russ Cox
aab26a5248
do not generate Init proto for sys and unsafe.
...
R=ken
OCL=24455
CL=24455
2009-02-05 14:49:53 -08:00