Russ Cox
ebd1eef41e
implement spec: when main.main returns, the program exits
...
R=r
DELTA=9 (7 added, 2 deleted, 0 changed)
OCL=15628
CL=15643
2008-09-22 13:47:59 -07:00
Russ Cox
fb40f88c40
test cleanup
...
- do not print tracebacks if $GOTRACEBACK=0
- set GOTRACEBACK=0 during tests
- filter out pc numbers in errors
R=r
DELTA=70 (22 added, 30 deleted, 18 changed)
OCL=15618
CL=15642
2008-09-22 13:47:53 -07:00
Russ Cox
a27e61e2fe
time bug: darwin, linux return microseconds not nanoseconds
...
R=r
DELTA=2 (0 added, 0 deleted, 2 changed)
OCL=15626
CL=15641
2008-09-22 13:46:57 -07:00
Russ Cox
fb2c66710c
compiler changes:
...
export.c:
- only expose explicitly exported types to importer
- fix behind your back
go.h:
- add deep() prototype (fixes 64-bit linux crash on time.go)
go.y:
- add a new syntax error case
walk.c:
- allow a,b = f() where f is func ptr (fixes bug088)
R=ken
OCL=15617
CL=15630
2008-09-22 12:45:01 -07:00
Ken Thompson
8231e94520
now method/interface code
...
R=r
OCL=15627
CL=15627
2008-09-22 12:16:19 -07:00
Ian Lance Taylor
128f052891
Correct two web links, add missing semicolon after <.
...
R=r
DELTA=3 (0 added, 0 deleted, 3 changed)
OCL=15619
CL=15624
2008-09-22 11:29:40 -07:00
Russ Cox
b676b0e125
better yacc rule in Makefile
...
if y.tab.c is older than y.tab.h, make
interprets doing nothing as a failure,
because y.tab.c hasn't been updated.
so update it.
R=r
DELTA=4 (0 added, 0 deleted, 4 changed)
OCL=15615
CL=15622
2008-09-22 10:56:54 -07:00
Ken Thompson
8a9752dcfb
another async select bug
...
R=r
OCL=15599
CL=15599
2008-09-20 19:56:40 -07:00
Rob Pike
9ebd9d3b7d
fix some tests
...
R=ken
OCL=15598
CL=15598
2008-09-20 15:16:48 -07:00
Ken Thompson
39a4b1421f
bug103 - but the fix caused other
...
things to break. hopefully all fixed
now.
R=r
OCL=15597
CL=15597
2008-09-20 14:59:15 -07:00
Ken Thompson
934a19fa4b
channel test
...
R=r
OCL=15587
CL=15587
2008-09-19 20:52:59 -07:00
Ken Thompson
1da727a31f
fix bugs in asynch select
...
R=r
OCL=15586
CL=15586
2008-09-19 20:43:30 -07:00
Robert Griesemer
d910e90edd
- heuristics for parsing composite literals in some cases
...
- fixed result parsing of function types
R=r
OCL=15585
CL=15585
2008-09-19 18:06:53 -07:00
Robert Griesemer
b90b213e61
Updated spec:
...
- clarified constants and constant expressions
- clarified type of array composite literals (fixed vs open arrays)
- clarified type of map composite literals (need to use '&' to get
a map pointer)
- added proposal for "if-else" (TBD)
- added TODO w/ respect to "x, ok = <-ch" (and for arrays)
R=r
DELTA=51 (35 added, 0 deleted, 16 changed)
OCL=15573
CL=15575
2008-09-19 15:49:55 -07:00
Russ Cox
0e81bba1fe
export an os.Error constructor
...
R=r
DELTA=20 (6 added, 7 deleted, 7 changed)
OCL=15569
CL=15571
2008-09-19 15:23:16 -07:00
Ian Lance Taylor
66b261a082
Check for specific error messages in the testsuite. This
...
permits testing that the compiler emits error messages for
specific lines that match egrep regexps. The desired error
messages are expressed using comments of the form
// ERROR "regexp"
R=r
DELTA=90 (73 added, 8 deleted, 9 changed)
OCL=15513
CL=15566
2008-09-19 14:39:49 -07:00
Rob Pike
995f938ae3
more nuanced handling of usage message to allow user control.
...
also print argv(0) in default message
R=gri
DELTA=37 (21 added, 9 deleted, 7 changed)
OCL=15540
CL=15554
2008-09-19 12:52:00 -07:00
Robert Griesemer
bf04eefddf
- simplified parser by better factoring
...
R=r
OCL=15539
CL=15542
2008-09-19 12:12:28 -07:00
Russ Cox
72e3b204e4
add gobuild.
...
use gobuild-generated Makefile for math and os.
other makefile tweaks.
move math/main.go to test/math.go
R=r
OCL=15529
CL=15537
2008-09-19 11:55:46 -07:00
Robert Griesemer
26adb31c30
- fix for out-of-bounds error found by rsc
...
- removed tests that may have wrong Go code from Makefile
R=r
OCL=15532
CL=15532
2008-09-19 10:56:35 -07:00
Russ Cox
5eb9e0621b
avoid dereferencing nil type on undefined name.
...
R=ken
DELTA=12 (12 added, 0 deleted, 0 changed)
OCL=15506
CL=15528
2008-09-19 09:39:09 -07:00
Robert Griesemer
6e08991eba
- fixed another parser bug, now correctly parse more tests
...
R=r
OCL=15518
CL=15518
2008-09-18 23:30:32 -07:00
Robert Griesemer
6a0fb60866
- added item to TODO list in go_spec
...
- filed a bug
R=r
OCL=15517
CL=15517
2008-09-18 23:16:22 -07:00
Robert Griesemer
2b70c6add3
- fixed old test cases with wrong syntax
...
- added more test cases to Makefile
- fixed another parser issue (possibly a 6g bug - to be tracked down)
R=r
OCL=15516
CL=15516
2008-09-18 23:09:07 -07:00
Robert Griesemer
a1ee6804dd
- fixed bug which prevented parser.go from compiling
...
(typo in ptr decl lead to an unresolved forward declaration)
- fixed parser bugs
- fixed Makefile
- now successfully parses most code
Issues:
- composite literals (cannot be identified easily from syntax alone)
- new(T, ...) (cannot be identified easily from syntax alone since
new is not a keyword and thus could be a different function then
the allocation function at which point "new((x + y))" is legal,
but the inner "(x" looks like the beginning of a function type)
R=r
OCL=15515
CL=15515
2008-09-18 22:53:54 -07:00
Robert Griesemer
81d7c51837
First cut at a Go pretty printer:
...
- code scavenged from Go-in-Go front-end (will merge back)
- using "symbol-table" free parsing to build AST
- no printing yet
R=r
OCL=15504
CL=15504
2008-09-18 16:58:37 -07:00
Russ Cox
a67258f380
proper handling of signals.
...
do not run init on g0.
R=r
DELTA=161 (124 added, 23 deleted, 14 changed)
OCL=15490
CL=15497
2008-09-18 15:56:46 -07:00
Russ Cox
326bb67fbf
whitespace
...
R=r
DELTA=0 (0 added, 0 deleted, 0 changed)
OCL=15492
CL=15494
2008-09-18 15:54:21 -07:00
Russ Cox
aca4f19e20
clean blyacc
...
R=r
DELTA=1 (0 added, 0 deleted, 1 changed)
OCL=15489
CL=15493
2008-09-18 15:50:28 -07:00
Russ Cox
f74ec00278
add -K flag to check stack underflow
...
R=ken
DELTA=38 (36 added, 0 deleted, 2 changed)
OCL=15482
CL=15491
2008-09-18 15:41:20 -07:00
Russ Cox
d1d7dc6c42
make blyacc too
...
R=r
DELTA=1 (0 added, 0 deleted, 1 changed)
OCL=15488
CL=15488
2008-09-18 15:09:48 -07:00
Russ Cox
76036192b9
make Makefiles safe for parallel make
...
use -j4 (4-way parallel) in make.bash.
halves time for make.bash on r45
also add libregexp, acid to default build
R=r
DELTA=90 (39 added, 37 deleted, 14 changed)
OCL=15485
CL=15487
2008-09-18 15:06:43 -07:00
Russ Cox
899c5281da
make acid build on linux.
...
recognize symbol table info again on 64-only linux.
R=r
DELTA=11 (9 added, 0 deleted, 2 changed)
OCL=15486
CL=15486
2008-09-18 15:06:14 -07:00
Russ Cox
13f3149a01
more helpful messages for name-related syntax errors.
...
R=ken
OCL=15477
CL=15479
2008-09-18 13:32:14 -07:00
Russ Cox
9f35e8b227
time & date.
...
rename AddrToInt, StatToInt, etc -> BytePtr, StatPtr, ...
R=r
OCL=15450
CL=15456
2008-09-17 16:20:00 -07:00
Robert Griesemer
119324d785
- updated printing of chan types
...
R=r
OCL=15448
CL=15448
2008-09-17 14:26:01 -07:00
Russ Cox
f0635bbfaa
Linux bison rejects // comments outside { code snippets }
...
R=ken
DELTA=1 (0 added, 0 deleted, 1 changed)
OCL=15444
CL=15446
2008-09-17 14:09:44 -07:00
Russ Cox
68209ed5e3
fix printing of -(1<<63)
...
R=r
OCL=15441
CL=15445
2008-09-17 14:08:52 -07:00
Robert Griesemer
2902a82ca4
adjusted doc to incorporate new channel notation
...
(still a couple of TODO's with respect to the new
notation).
R=r
DELTA=71 (10 added, 11 deleted, 50 changed)
OCL=15419
CL=15443
2008-09-17 13:57:11 -07:00
Russ Cox
9350ef4eea
add network listening & tests
...
R=r,presotto
OCL=15410
CL=15440
2008-09-17 13:49:23 -07:00
Robert Griesemer
a456463891
- changed my scanner/parser to accept new channel syntax
...
R=r
OCL=15439
CL=15439
2008-09-17 13:05:39 -07:00
Rob Pike
f7a506bf42
tutorial code:
...
tweak a program or two
delete unused programs
add shell script to run them all
R=gri
DELTA=213 (62 added, 147 deleted, 4 changed)
OCL=15435
CL=15437
2008-09-17 12:14:52 -07:00
Ken Thompson
304440356d
assignment in select
...
with new select operator
R=r
OCL=15418
CL=15418
2008-09-16 20:51:50 -07:00
Rob Pike
592d2e3d8d
update to new communications syntax
...
R=gri
OCL=15417
CL=15417
2008-09-16 19:40:38 -07:00
Rob Pike
27c0eb8431
update tests to new communications syntax
...
powser1.go has not been tested - waiting for compiler to catch up
R=ken
OCL=15415
CL=15415
2008-09-16 19:33:40 -07:00
Rob Pike
47919799b4
new grammar:
...
binary <- is send
unary <- is recv
-< is gone
case a := <-ch: works in select
case a = <-ch: works in select
support for new cases is not yet in the compiler but all non-select
code works
second CL will update affected go source
R=ken
OCL=15414
CL=15414
2008-09-16 19:14:33 -07:00
Russ Cox
4dfc7f0f14
fix / work around bugs in bufio test
...
R=r
DELTA=11 (8 added, 0 deleted, 3 changed)
OCL=15405
CL=15405
2008-09-16 14:15:54 -07:00
Rob Pike
85f8d4501a
fix some broken tests (tests themselves were wrong)
...
R=gri,rsc
OCL=15310
CL=15402
2008-09-16 14:03:43 -07:00
Rob Pike
c3b397bd99
var bug is fixed
...
R=rsc
OCL=15400
CL=15400
2008-09-16 14:02:41 -07:00
Russ Cox
e8a02230f2
preliminary network - just Dial for now
...
R=r,presotto
OCL=15393
CL=15399
2008-09-16 13:42:47 -07:00