summaryrefslogtreecommitdiff
path: root/usr
AgeCommit message (Collapse)AuthorFilesLines
2008-10-23- expanded parsing heuristics to deal with new(T, ...)Robert Griesemer5-51/+107
- fixed an issue with select - added all bugs and fixedbugs tests that are syntactically correct to the test suite - minor cosmetic changes R=r OCL=17759 CL=17759
2008-10-22move reflection code into final place.Rob Pike8-2283/+0
this is just a branch. next cl will update and add to build R=rsc DELTA=4528 (2264 added, 2264 deleted, 0 changed) OCL=17670 CL=17672
2008-10-22Reflection values.Rob Pike3-123/+177
R=rsc DELTA=206 (79 added, 25 deleted, 102 changed) OCL=17652 CL=17669
2008-10-22Add names to types to avoid recursive explosion and to getRob Pike3-66/+111
the right answer when a type name redefines an existing type. R=rsc DELTA=133 (53 added, 8 deleted, 72 changed) OCL=17637 CL=17639
2008-10-22- exclude newfn.go from tests - cannot be parsed syntactically aloneRobert Griesemer1-1/+2
in general R=rsc DELTA=2 (1 added, 0 deleted, 1 changed) OCL=17624 CL=17624
2008-10-22More reflection code.Rob Pike6-93/+1048
Beginnings of values. typestrings are grabbed from the environment. R=rsc APPROVED=rsc DELTA=1046 (952 added, 3 deleted, 91 changed) OCL=17593 CL=17621
2008-10-20- remove inconsistent directory from testsRobert Griesemer1-1/+0
R=rsc DELTA=1 (0 added, 1 deleted, 0 changed) OCL=17514 CL=17514
2008-10-20enable tests that verify that pretty-printed code can be compiled with 6g againRobert Griesemer1-12/+23
R=r OCL=17510 CL=17510
2008-10-20- fixed missing parens in some cases of unary expressionsRobert Griesemer3-22/+56
- added validation test verifying that pretty output compiles with 6g again (disabled at the moment) - replaced another recursive function with an interative solution R=r OCL=17505 CL=17505
2008-10-20- use stringtorune library function for faster rune scanningRobert Griesemer6-216/+248
- converted 2 right-recursive parsing functions into iterative versions - renamed node.go -> ast.go (clearer) R=r OCL=17496 CL=17498
2008-10-20- removed double-declaration of len()Robert Griesemer1-5/+0
R=r OCL=17463 CL=17463
2008-10-20- removed need for lhs field in stat nodeRobert Griesemer4-24/+21
- as a result deleted some more code R=r OCL=17449 CL=17449
2008-10-18- simplified parsing of composite literals and slices byRobert Griesemer4-62/+56
treating ":" as lowest-level binary operator - more precise error message for composites - added flag -columns (false) - when set, prints precise error column - a few more tests R=r OCL=17428 CL=17428
2008-10-18Added mechanism for very precise self-testing:Robert Griesemer5-61/+187
- in selftest mode (-t) interpret comments of the form /* ERROR */ and /* SYNC */ and validate reported errors with the error markings in a file - added initial selftest.go file Also: - fixed an issue with empty blocks - generally report better error messages - added many more tests to the test script (essentially all .go programs which have no syntax errors) R=r OCL=17426 CL=17426
2008-10-17beginnings of reflection values.Rob Pike6-65/+408
R=rsc DELTA=421 (357 added, 17 deleted, 47 changed) OCL=17388 CL=17401
2008-10-17- fixed bug that wasn't caught by 6g (but by gccgo)Robert Griesemer1-1/+1
R=r DELTA=1 (0 added, 0 deleted, 1 changed) OCL=17380 CL=17380
2008-10-17- fixed a couple of corner cases (empty statements, empty composites)Robert Griesemer5-113/+136
- more robust printing in presence of errors - fixed incorrect printing of function literals R=r OCL=17378 CL=17378
2008-10-17add simple synchronization mechanism.Rob Pike2-6/+24
R=rsc DELTA=25 (19 added, 1 deleted, 5 changed) OCL=17346 CL=17346
2008-10-16- stronger syntax checksRobert Griesemer5-66/+173
- fixed a bug with non-eof terminated //-style comments - collecting comments - first experiments with reproducing comments (works but not very pretty, disabled for now) - idempotent for all correct .go files we have checked in R=r OCL=17333 CL=17333
2008-10-16- added test scriptRobert Griesemer4-58/+114
- fixed a couple of printing bugs status: parses, reproduces, and idempotently reproduces all correct .go files R=r OCL=17332 CL=17332
2008-10-16type string parser; now handles all typesRob Pike3-94/+166
R=rsc DELTA=253 (153 added, 81 deleted, 19 changed) OCL=17331 CL=17331
2008-10-16parsing of type strings. still missing: func, struct, interface, chanRob Pike3-29/+353
R=rsc DELTA=366 (337 added, 7 deleted, 22 changed) OCL=17321 CL=17324
2008-10-16- more robust TokenString implementationRobert Griesemer2-17/+14
R=r OCL=17319 CL=17319
2008-10-16snapshot:Robert Griesemer3-53/+54
- typeguards, var decls, several printing bug fixed - now fully idempotent on many files (which are accepted by 6g afterwards) - still some detail issues R=r OCL=17310 CL=17310
2008-10-16- composites, receivers, various add. checksRobert Griesemer3-129/+138
R=r OCL=17295 CL=17295
2008-10-16Change file name from "print" to "tostring" and update the rest.Rob Pike3-20/+22
R=rsc DELTA=225 (109 added, 107 deleted, 9 changed) OCL=17294 CL=17294
2008-10-16convert print to ToString.Rob Pike1-53/+52
file name change in next round. R=rsc DELTA=71 (18 added, 19 deleted, 34 changed) OCL=17291 CL=17293
2008-10-16snapshot:Robert Griesemer2-44/+64
- fallthrough stat, label decls - improved printing layout R=r OCL=17283 CL=17283
2008-10-15- updated makefile for gccgoRobert Griesemer1-2/+4
R=r OCL=17243 CL=17245
2008-10-15reflection type structure. no parsing etc. yet.Rob Pike4-0/+471
main is a simple tester outside the Makefile. R=rsc DELTA=455 (455 added, 0 deleted, 0 changed) OCL=17235 CL=17242
2008-10-15snapshot of pretty printer:Robert Griesemer4-135/+233
- almost there, receivers, labels, composites, comments are not yet printed - runs through 18KLOC of Go code and prints it again R=r OCL=17237 CL=17237
2008-10-15snapshotRobert Griesemer5-207/+155
- fixed expression and statement printing - missing: declarations, comments R=r OCL=17207 CL=17207
2008-10-14move regexp to libRob Pike3-947/+0
next cl will update names and add to build R=rsc DELTA=1876 (938 added, 938 deleted, 0 changed) OCL=17149 CL=17166
2008-10-14- snapshot of pretty printer workRobert Griesemer6-1363/+897
- accepts all Go code (use -s flag) - complete rewrite of AST, AST building, and printing (as a result much more compact) - printing severely screwed up at the moment, but should be fully working in 1 more day R=r DELTA=2118 (514 added, 980 deleted, 624 changed) OCL=17161 CL=17161
2008-10-14add some testsRob Pike2-44/+66
fix some bugs in () ordering and rune processing R=rsc DELTA=72 (27 added, 5 deleted, 40 changed) OCL=17147 CL=17147
2008-10-14implement matchingRob Pike2-39/+286
clean up interface equality hack still needs more tests; checking in for gccgo testing R=rsc DELTA=304 (261 added, 14 deleted, 29 changed) OCL=17128 CL=17135
2008-10-11add character classes.Rob Pike1-81/+230
allocate into an array for easier scanning and printing. R=rsc DELTA=282 (193 added, 44 deleted, 45 changed) OCL=16955 CL=16955
2008-10-10convert from integer indexes to interface variables.Rob Pike1-129/+148
update printing. R=rsc DELTA=194 (60 added, 41 deleted, 93 changed) OCL=16942 CL=16945
2008-10-10- implemented heuristic for composite literals starting with a type name:Robert Griesemer3-144/+116
if in a if, for, or switch header, must be parenthesized - implemented string concatenation - simplified a lot of code - added many more tests: can now parse all *.go files I got my hands on - printing output currently broken in some cases, use with -s (silent) option R=r OCL=16932 CL=16934
2008-10-10cat unmatched )Rob Pike1-24/+3
delete unused This() in preparation for removing linking via array indexes R=rsc DELTA=26 (2 added, 23 deleted, 1 changed) OCL=16895 CL=16909
2008-10-09beginnings of regular expression library.Rob Pike3-0/+531
will move elsewhere when more complete. parses, does not execute. no character classes yet. R=rsc DELTA=522 (522 added, 0 deleted, 0 changed) OCL=16863 CL=16874
2008-10-09- more cleanups (simpler code for optional semi's, bug fixes)Robert Griesemer1-94/+73
R=r OCL=16869 CL=16869
2008-10-07- don't allow empty decl lists (e.g. const ())Robert Griesemer1-7/+5
R=r OCL=16698 CL=16698
2008-10-07- accept new semicolon syntax (at the moment,Robert Griesemer1-39/+50
the parser accepts a bit more then it should) R=r OCL=16694 CL=16694
2008-10-07remove uses of *T as an implicit forward declaration of TRuss Cox2-5/+53
R=gri,r OCL=16648 CL=16652
2008-10-07update code to follow new semicolon rules:Russ Cox1-12/+12
* 1. all statements and declarations are terminated by semicolons * 2. semicolons can be omitted at top level. * 3. semicolons can be omitted before and after the closing ) or } * on a list of statements or declarations. /home/rsc/bin/addsemi and then diff+tweak. R=r,gri OCL=16620 CL=16643
2008-10-01- fixed Makefile, added more testsRobert Griesemer2-27/+42
- fixed parsing of parameter lists (sigh) R=r DELTA=48 (22 added, 7 deleted, 19 changed) OCL=16319 CL=16321
2008-09-30more fine-tuning of ;'sRobert Griesemer1-2/+3
R=r OCL=16274 CL=16274
2008-09-30- fixed semicolon handling in pretty printerRobert Griesemer3-213/+209
- some scanner cleanup - new pretty-printed code can be compiled again (for some files) R=r OCL=16272 CL=16272
2008-09-27- allow for embeded types in fields, and parameter lists w/o parameter namesRobert Griesemer3-13/+40
- temporary work-around for 6g bug R=r OCL=16052 CL=16052