Robert Griesemer
af8036aa6b
- renamed docprinter.go -> doc.go
...
- adjusted dependent files
(no changes in doc.go)
TBR=rsc
OCL=27860
CL=27860
2009-04-25 16:48:00 -07:00
Robert Griesemer
f8ff3b1055
daily snapshot:
...
- more work on template-driven ast formatting
- added preliminary test suite
- added documentation
TBR=r
OCL=27858
CL=27858
2009-04-25 16:36:17 -07:00
Robert Griesemer
eaba458ee6
cannot declare a variable in new scope with same name as type in outer scope
...
(same as bug144.go but for types instead of constants)
TBR=ken
DELTA=17 (17 added, 0 deleted, 0 changed)
OCL=27855
CL=27855
2009-04-25 13:41:56 -07:00
Robert Griesemer
3aa892c4f9
daily snapshot:
...
- more work on template-driven ast printing
R=r
OCL=27851
CL=27851
2009-04-24 17:22:58 -07:00
Ken Thompson
b03b541b7a
recognize a defined constant
...
as a new name in a later declaration
(bug 144)
R=r
OCL=27850
CL=27850
2009-04-24 16:43:31 -07:00
Robert Griesemer
9c3a9b71c8
- fixed a couple of potential end-less loops
...
(no progress in presence of syntax errors)
- end parsing early if source doesn't start
proper package clause
R=iant
DELTA=18 (7 added, 6 deleted, 5 changed)
OCL=27840
CL=27842
2009-04-24 12:59:09 -07:00
Robert Griesemer
516bf6535c
- cannot declare local variable named like a constant in outer scope
...
- submitted per discussion w/ ken
TBR=ken
DELTA=25 (25 added, 0 deleted, 0 changed)
OCL=27824
CL=27826
2009-04-23 21:54:07 -07:00
Robert Griesemer
448a7b46a9
daily snapshot:
...
- minor bug fixes in pretty, godoc
- first cut at template-driven printing of ast
TBR=r
OCL=27825
CL=27825
2009-04-23 21:53:01 -07:00
Ben Eitzen
155ec1d904
Clear upper bits of 64-bit indexing register when using types smaller than 64 bits.
...
APPROVED=ken
OCL=27811
CL=27823
2009-04-23 18:23:34 -07:00
Robert Griesemer
88a0c4071d
fixed typo in EBNF of ENBF
...
R=iant
DELTA=1 (0 added, 0 deleted, 1 changed)
OCL=27801
CL=27806
2009-04-23 14:42:21 -07:00
Rob Pike
258a08ed8f
add {.tab}
...
fix a couple of comments
TBR=rsc
OCL=27716
CL=27716
2009-04-22 00:53:35 -07:00
Rob Pike
9d70646fcf
allow godoc to match on regular expressions.
...
if the name contains a metacharacter, use regexp matching;
otherwise require strict equality.
now
godoc flag '.*Var'
can give you all the FooVar functions.
R=gri
DELTA=19 (19 added, 0 deleted, 0 changed)
OCL=27711
CL=27713
2009-04-21 22:46:19 -07:00
Rob Pike
4b62e8d7ef
fix template.
...
.or works in .repeated so remove the comment.
the bug was in the template: .section executes iff the field is non-empty.
R=gri
DELTA=13 (6 added, 7 deleted, 0 changed)
OCL=27710
CL=27712
2009-04-21 22:26:08 -07:00
David Symonds
2f8a2dc193
Extend fixedbugs/bug143.go with function return values,
...
as a regression test for the fix made in s2/27706.
R=r
APPROVED=r
DELTA=14 (13 added, 0 deleted, 1 changed)
OCL=27707
CL=27709
2009-04-21 20:26:26 -07:00
David Symonds
d724092407
Clean up some more code after bug143 was fixed.
...
R=r
APPROVED=r
DELTA=6 (0 added, 5 deleted, 1 changed)
OCL=27708
CL=27708
2009-04-21 20:24:28 -07:00
Ken Thompson
190a540892
2 minor bugs.
...
lv context for some [] operations
calling implicit(*map) before walk.
R=r
OCL=27706
CL=27706
2009-04-21 19:52:13 -07:00
Ken Thompson
c18db5aa18
bug in shift of longer operand
...
by a shorter operand. the bits
in the difference were not cheared.
R=r
OCL=27705
CL=27705
2009-04-21 19:38:58 -07:00
Robert Griesemer
dc08ad4f37
remove lots of accumulated crud:
...
- delete utility files which contained functionality that is now elsewhere
(or saved the files away for now)
- cleanup Makefile (remove unnecessary deps)
- minor adjustments to godoc, fixed a couple of bugs
- make pretty.go self-contained
TBR=r
DELTA=625 (81 added, 510 deleted, 34 changed)
OCL=27700
CL=27702
2009-04-21 18:37:48 -07:00
David Symonds
f8931c6ceb
Bug 143 is fixed, so clean up some of exvar.
...
R=r
APPROVED=r
DELTA=8 (3 added, 1 deleted, 4 changed)
OCL=27699
CL=27701
2009-04-21 18:36:53 -07:00
Rob Pike
227fe8c530
bug143 is fixed
...
R=dsymonds
DELTA=58 (26 added, 32 deleted, 0 changed)
OCL=27698
CL=27698
2009-04-21 18:11:34 -07:00
Ken Thompson
b5e7562191
supply default indirection to
...
map indexing - bug 143
R=r
OCL=27695
CL=27695
2009-04-21 17:00:08 -07:00
David Symonds
5cb6843a4e
Change exvar to use a goroutine channel worker instead of a mutex for synchronisation.
...
Also it should be more testable, as there's less global state.
R=r
APPROVED=r
DELTA=113 (38 added, 12 deleted, 63 changed)
OCL=27653
CL=27694
2009-04-21 16:50:09 -07:00
Robert Griesemer
9c456283f3
minor adjustment to comment formatting for better godoc output
...
R=r
DELTA=5 (0 added, 0 deleted, 5 changed)
OCL=27687
CL=27689
2009-04-21 15:30:17 -07:00
Robert Griesemer
011bf2b6d3
minor adjustments to comments for better godoc output
...
R=r
DELTA=6 (0 added, 0 deleted, 6 changed)
OCL=27686
CL=27688
2009-04-21 15:14:34 -07:00
Robert Griesemer
3ae849d47d
- documentation for bignum package
...
- removed some constants from public interface
R=r
DELTA=375 (238 added, 14 deleted, 123 changed)
OCL=27636
CL=27668
2009-04-21 10:52:00 -07:00
Rob Pike
5689e6472c
update golden for bug 143
...
R=dsymonds
DELTA=6 (6 added, 0 deleted, 0 changed)
OCL=27654
CL=27654
2009-04-21 00:05:19 -07:00
David Symonds
de489fb38c
Refactor exvar to use interface types, and add mapVar.
...
R=r
APPROVED=r
DELTA=170 (136 added, 6 deleted, 28 changed)
OCL=27628
CL=27652
2009-04-20 22:38:14 -07:00
David Symonds
d5fa81e1a9
Add bug143 to demonstrate bug with "v, ok :=" on pointers to maps.
...
R=r
APPROVED=r
DELTA=26 (26 added, 0 deleted, 0 changed)
OCL=27651
CL=27651
2009-04-20 21:03:38 -07:00
Rob Pike
a6bc344351
rewrite template library:
...
- separate parsing from execution
- rearrange code for organizational clarity
- provide execution errors and parse-time errors
- implement .or for repeated
TBR=rsc
OCL=27650
CL=27650
2009-04-20 18:51:13 -07:00
David Symonds
8e4b65d041
Move iterable package to usr/dsymonds/.
...
R=r
APPROVED=r
DELTA=598 (330 added, 266 deleted, 2 changed)
OCL=27627
CL=27649
2009-04-20 18:13:14 -07:00
Robert Griesemer
40d6bb5969
- book-keeping in the TODO section:
...
- removed closed, resolved, or off-the-table items
- consolidated remaining items
- no changes to the spec
R=r
DELTA=116 (1 added, 102 deleted, 13 changed)
OCL=27596
CL=27640
2009-04-20 15:32:20 -07:00
Robert Griesemer
0dd5be48aa
missing '}' (found by pretty)
...
R=r
DELTA=1 (1 added, 0 deleted, 0 changed)
OCL=27633
CL=27639
2009-04-20 15:23:21 -07:00
David Symonds
d88fb9f0f6
Oops, forgot to commit this change.
...
R=r
APPROVED=r
DELTA=3 (1 added, 0 deleted, 2 changed)
OCL=27624
CL=27626
2009-04-20 00:43:10 -07:00
David Symonds
dc5cffbeb7
Use the mutex in exvar.Set since map access is not atomic.
...
Imagine your var has a value of zero. If you have a goroutine calling Set(5),
and another calling Increment(+1), then you only want one of these outcomes:
- Set completes first, and then Increment occurs => 6
- Increment completes first, and then Set occurs => 5
However, you could get a sequence:
- read (for Increment) 0
- set (for Set) 5
- write (for Increment) 1
This results in a value of 1, which is undesirable.
Kudos to dnadasi for catching this.
R=r
APPROVED=r
DELTA=3 (3 added, 0 deleted, 0 changed)
OCL=27625
CL=27625
2009-04-20 00:42:08 -07:00
David Symonds
a6156873d0
Add Inject function to iterable package.
...
Fix a couple of style mistakes.
R=r,rsc
APPROVED=r
DELTA=34 (30 added, 1 deleted, 3 changed)
OCL=27623
CL=27623
2009-04-19 23:52:29 -07:00
David Symonds
3cc702ba60
Initial cut at an "exported variables" (exvar) package.
...
This handles integer-valued vars in a singleton struct, and exports functions
for incrementing, setting and getting those vars, as well as rendering all the
vars in a standard format.
Demonstrate the use of the exvar package in the http/triv server.
R=dcross,r
APPROVED=r
DELTA=122 (122 added, 0 deleted, 0 changed)
OCL=27617
CL=27622
2009-04-19 21:17:27 -07:00
Rob Pike
f1820b50ff
typo in message
...
R=ken
OCL=27621
CL=27621
2009-04-19 21:12:48 -07:00
Rob Pike
f83f245c8c
add another test to decl to see that result vars are redeclarable.
...
R=ken
OCL=27620
CL=27620
2009-04-19 21:12:13 -07:00
Rob Pike
7e1cfa7432
Readn is a silly name when there's no n. Change to FullRead.
...
R=gri
DELTA=15 (0 added, 0 deleted, 15 changed)
OCL=27619
CL=27619
2009-04-19 21:02:29 -07:00
Rob Pike
2a1683a007
spec change for redeclaration
...
R=iant,gri
DELTA=14 (14 added, 0 deleted, 0 changed)
OCL=27615
CL=27618
2009-04-19 20:04:15 -07:00
Rob Pike
549a60046b
tests for redeclaration in :=
...
R=ken
DELTA=71 (71 added, 0 deleted, 0 changed)
OCL=27616
CL=27616
2009-04-18 17:21:00 -07:00
Rob Pike
ae08a48719
the Big Error Shift applied to lib/time/zoneinfo.go.
...
R=gri
DELTA=22 (5 added, 0 deleted, 17 changed)
OCL=27608
CL=27614
2009-04-18 16:44:13 -07:00
Ken Thompson
34b6f642de
mixed old/new declaration
...
exact spec:
a) must be a multi-assignment w :=
b) a proper subset of the lhs
can be declared in same block
with the same type with no
"redeclaration" error
R=r
OCL=27610
CL=27610
2009-04-18 13:58:04 -07:00
Rob Pike
bfd5ede78d
add -P pkgdir option to 6l to have it look first in pkgdir for a package.
...
this allows gotest to find the locally built package when doing
make
gotest
without this option, one would have to say
make install
gotest
which kinda defeats the purpose
based on discussions with rsc.
R=ken,rsc
DELTA=12 (10 added, 1 deleted, 1 changed)
OCL=27606
CL=27606
2009-04-17 19:39:45 -07:00
Rob Pike
45ed7297e8
Step 2 of the Big Error Shift.
...
Change the representation of errors in "os" to be cleaner.
(But they are not really representative of the power of the new scheme.)
Step 3 will be to remove all references to os.NewError.
Step 4 will be to delete the second half of lib/os/error.go.
R=rsc
OCL=27587
CL=27587
2009-04-17 00:36:15 -07:00
Rob Pike
aaf63f8d06
Step 1 of the Big Error Shift: make os.Error an interface and replace *os.Errors with os.Errors.
...
lib/template updated to use new setup; its clients also updated.
Step 2 will make os's error support internally much cleaner.
R=rsc
OCL=27586
CL=27586
2009-04-17 00:08:24 -07:00
Russ Cox
3ea8d854a3
make string(array) take []byte only (and thus *[10]byte but not [10]byte)
...
R=ken
OCL=27581
CL=27585
2009-04-16 23:07:30 -07:00
Russ Cox
e2bf22715d
make string take []byte only, so have to use *[10]byte to convert
...
R=r
DELTA=4 (0 added, 0 deleted, 4 changed)
OCL=27578
CL=27584
2009-04-16 23:07:15 -07:00
Russ Cox
ea12ed4fdd
regenerate makefile with installed gobuild
...
R=r
DELTA=23 (8 added, 0 deleted, 15 changed)
OCL=27577
CL=27583
2009-04-16 23:07:00 -07:00
Russ Cox
bcdc247f28
spec edits for array slice change
...
R=r
DELTA=6 (0 added, 2 deleted, 4 changed)
OCL=27532
CL=27582
2009-04-16 23:06:48 -07:00