1
0
mirror of https://github.com/golang/go synced 2024-11-25 08:47:56 -07:00
Commit Graph

22 Commits

Author SHA1 Message Date
Robert Griesemer
af065a0c77 - make code in gosrc compile again, check in all pending changes
(this code doesn't match the existing language at this point,
  but it's a large code base which compiles - will eventually go
  away)
- enable compilation of it again in run.bash

R=r
DELTA=1147  (534 added, 311 deleted, 302 changed)
OCL=22176
CL=22176
2009-01-06 16:26:45 -08:00
Russ Cox
08ca30bbfa change *map to map; *chan to chan; new(T) to new(*T)
fix bugs left over from *[] to [] conversion.

TBR=r
OCL=21576
CL=21581
2008-12-19 03:05:37 -08:00
Russ Cox
983f06bdb6 update code to follow new semicolon rules:
*  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-07 12:31:31 -07:00
Robert Griesemer
683ded80c9 - changed go-in-go parser to require ()'s for panic and print
- adjusted much of the existing go code
- missing: tests

R=r
DELTA=229  (1 added, 17 deleted, 211 changed)
OCL=14103
CL=14103
2008-08-11 21:20:42 -07:00
Robert Griesemer
40c93a5238 - experiments with forward-declaring types of non-imported packages
- adjusted switch syntax (no repeated case: case: anymore)
- enabled some constant expressions that work now

R=r
OCL=14098
CL=14098
2008-08-11 18:44:41 -07:00
Robert Griesemer
c7fb27f6e4 - more steps towards automatic recursive compilation of dependencies
- make forward declarations of types match 6g
- better factoring

R=r
OCL=14059
CL=14059
2008-08-11 09:45:40 -07:00
Robert Griesemer
bc13a1a374 first primitive cut at resolving missing imports automatically:
if an import file is missing, the corresponding source
is compiled automatically, if found

R=r
OCL=13990
CL=13990
2008-08-07 19:32:22 -07:00
Robert Griesemer
882ac63885 - implement scanner token stream via channel
- change test_scanner to scan using both methods
- add -pscan flag to Go front-end to choose between conventional
  synchronous or parallel asynchronous scanning

R=r
OCL=13937
CL=13937
2008-08-06 18:57:37 -07:00
Robert Griesemer
7a799be49a - switch to new export syntax
- deprecate old syntax in this front-end (use -6g for compatibility)

R=r
OCL=13831
CL=13833
2008-08-04 15:37:47 -07:00
Robert Griesemer
71d50b8bf9 - more import/export stuff
- use new export syntax

R=r
OCL=13807
CL=13807
2008-08-04 10:19:36 -07:00
Robert Griesemer
6dd92ea6cb - fixed import bug (import "...")
- better debugging support
- removed dead code

R=r
OCL=13680
CL=13680
2008-07-30 21:26:15 -07:00
Robert Griesemer
1f46513917 various fixes:
- missing return in import code
- proper propagation of flags to various components
- better error message when source position is missing
- cleanups

R=r
OCL=13676
CL=13676
2008-07-30 17:36:03 -07:00
Robert Griesemer
6acdf3edff - addded interface pretty printer
R=r
OCL=13646
CL=13646
2008-07-30 13:01:28 -07:00
Robert Griesemer
4b0b7d8dfe - import and export code, bug fixes
- almost back to where I was in C++, but now all in Go

R=r
OCL=13627
CL=13627
2008-07-29 19:02:49 -07:00
Robert Griesemer
5a90ede8a4 - scanner returns now triple (tok, tok_pos, tok_val)
- initial try-out of AST data structures
- removed test_parser (not working anymore - parser needs more infrastructure)

SVN=128089
2008-07-18 17:18:29 -07:00
Robert Griesemer
dead164cc0 - made initial export work
- added code for importing (not tested)
- various fixes

SVN=128061
2008-07-18 14:04:21 -07:00
Robert Griesemer
c3e9c7d106 - more front-end stuff: hooking up packages, preparing for exports
SVN=127931
2008-07-17 18:02:10 -07:00
Robert Griesemer
85303f2715 - moved struct Compilation into globals.go, adjusted deps
- bail out after > 10 errors
- fixed send/recv statements

SVN=127890
2008-07-17 15:11:46 -07:00
Robert Griesemer
d88c759e87 - moved package code into globals.go, adjusted deps
SVN=127887
2008-07-17 14:53:13 -07:00
Robert Griesemer
0e67654f94 - changed channel operators
- more work on packages

SVN=127671
2008-07-16 17:00:48 -07:00
Robert Griesemer
f550cd67e0 - more infrastructure
SVN=127430
2008-07-15 19:59:00 -07:00
Robert Griesemer
a6f87794ff - added more code (package, export, compilation)
- first cut at semantic checks (disabled)

SVN=127348
2008-07-15 15:37:14 -07:00