summaryrefslogtreecommitdiff
path: root/src/cmd/gc
AgeCommit message (Collapse)AuthorFilesLines
2009-03-30fix http://b/1748082Russ Cox2-1/+8
package main var f = func(a, b int) int { return a + b } R=ken OCL=26935 CL=26935
2009-03-30move portable object routines (especiallyRuss Cox5-107/+634
signature generation) into gc. R=ken OCL=26933 CL=26933
2009-03-30closure bug: carry along outnamed flag.Russ Cox1-0/+1
R=ken OCL=26930 CL=26930
2009-03-30move portable code generation (basic statements) to gc.Russ Cox5-16/+606
R=ken OCL=26929 CL=26929
2009-03-30move some portable pieces of 6g/gsubr.c into gc/subr.cRuss Cox2-1/+272
int brcom(int); int brrev(int); void setmaxarg(Type*); Sig* lsort(Sig*, int(*)(Sig*, Sig*)); int dotoffset(Node*, int*, Node**); void stringpool(Node*); void tempname(Node*, Type*); R=ken OCL=26922 CL=26922
2009-03-30move alignment calculations into gcRuss Cox5-96/+403
R=ken OCL=26914 CL=26914
2009-03-30don't crash onRuss Cox1-0/+1
unsafe.Alignof(struct{x float}{0}.x) R=ken OCL=26911 CL=26913
2009-03-30move bits.c from 6g to gcRuss Cox3-1/+196
R=ken OCL=26909 CL=26909
2009-03-30don't write cmp's output to the c file.Russ Cox1-3/+3
cope better with p4 not found. R=r DELTA=3 (0 added, 0 deleted, 3 changed) OCL=26877 CL=26879
2009-03-24^ type(const) now inverts "enough" bitsKen Thompson1-2/+30
^ signed(const) becomes illegal ^ unsigned(const) becomes legal R=r OCL=26697 CL=26697
2009-03-24throw away most of the compat.h compatibility layerRuss Cox3-6/+5
in favor of the lib9 compatibility layer. no need for two. now that mycreate is gone, .6 files are 0644 not 0755. TBR=r OCL=26679 CL=26679
2009-03-22rewrote switchKen Thompson2-435/+525
fixed bug 141 R=r OCL=26627 CL=26627
2009-03-20range over channels.Russ Cox1-4/+33
also fix multiple-evaluation bug in range over arrays. R=ken OCL=26576 CL=26576
2009-03-18fix b/1722502Russ Cox1-0/+3
BUG=1722502 R=ken OCL=26526 CL=26526
2009-03-18remove assignment cases from switchKen Thompson1-57/+3
R=r OCL=26480 CL=26480
2009-03-17switch on false errorKen Thompson1-1/+1
R=r OCL=26434 CL=26434
2009-03-17binary search on type switches.Ken Thompson6-124/+252
new feature 'case nil:' in type switch will match iff the interface is nil. R=r OCL=26404 CL=26404
2009-03-16change format of Sigt and SigiKen Thompson1-5/+0
to allow room for type hash needed for log-time type switch. R=r OCL=26354 CL=26354
2009-03-12warn -> yyerror in mparith.Russ Cox4-29/+23
close two more bugs. R=ken OCL=26226 CL=26226
2009-03-12make 6g constants behave as ken proposes. (i hope.)Russ Cox11-648/+747
various bug fixes and tests involving constants. test/const1.go is the major new test case. R=ken OCL=26216 CL=26224
2009-03-12chan flags close/closed installedKen Thompson9-4/+74
runtime not finished. R=r OCL=26217 CL=26217
2009-03-11added bitclear operators &^ and &^=Ken Thompson7-4/+72
R=r OCL=26152 CL=26152
2009-03-11bug 125Ken Thompson1-4/+18
R=r OCL=26146 CL=26146
2009-03-11complain when trying to put T into an interfaceRuss Cox1-3/+14
if T has pointer methods. this is just a heuristic but it catches the problem robert ran into and lets me put the larger interface issues aside for now. found one bug in pretty. R=ken OCL=26141 CL=26141
2009-03-10Add support for a -I option. -I DIR searches for packages inIan Lance Taylor2-8/+47
DIR. R=ken,rsc DELTA=49 (41 added, 2 deleted, 6 changed) OCL=26057 CL=26092
2009-03-10bug086Ken Thompson1-1/+3
R=r OCL=26090 CL=26090
2009-03-10bug with interaction of variablesKen Thompson1-5/+26
declared in cases and heap allocation R=r OCL=26064 CL=26064
2009-03-07binary search for constant case statements.Ken Thompson1-3/+212
R=r OCL=25890 CL=25890
2009-03-061. type switchesKen Thompson5-59/+223
2. fixed fault on bug128 3. got rid of typeof 4. fixed bug in t,ok = I2T R=r OCL=25873 CL=25873
2009-03-05new approach for generating sysimport.cRuss Cox4-22/+39
(renamed to avoid any conflict with old p4 copies). this approach doesn't require auto-generating files also kept in p4, so it should be easier on go users who don't sync very often. this approach will be more work for go developers: builtin.c needs to be copied to builtin.c.boot in p4 as new functions are added. mkbuiltin does this for certain $USERs to help us remember. R=r DELTA=343 (176 added, 162 deleted, 5 changed) OCL=25803 CL=25805
2009-03-05bug085 bug129Russ Cox2-11/+46
R=ken OCL=25787 CL=25791
2009-03-05new switch implementationKen Thompson5-154/+391
in preparation of type switch. no functional change (yet). R=r OCL=25784 CL=25788
2009-03-04reject invalid map key types at compile timeRuss Cox3-12/+24
R=ken OCL=25720 CL=25720
2009-03-04disallow ordinary-type.(T), as in spec.Russ Cox1-0/+3
R=ken OCL=25705 CL=25705
2009-03-03back to T{x}, stricter handling of T(x) vs x.(T)Russ Cox4-68/+87
R=ken DELTA=131 (60 added, 41 deleted, 30 changed) OCL=25617 CL=25633
2009-02-21bug with select :=Ken Thompson1-1/+1
R=r OCL=25278 CL=25278
2009-02-18allow parens to disambiguate types.Russ Cox1-1/+12
examples: chan <- (chan int) chan (<- chan int) (map[string]func())("a": main) R=ken OCL=25151 CL=25151
2009-02-17fix unsafe.Sizeof("abc")Ken Thompson1-5/+13
R=rsc OCL=25105 CL=25105
2009-02-16bug123Russ Cox2-1/+9
R=ken OCL=25075 CL=25075
2009-02-16embedded interface types in interfaces.Russ Cox2-6/+44
R=ken OCL=25072 CL=25072
2009-02-15bug fix for &x[0] when x is sliceRuss Cox1-4/+7
R=ken OCL=25044 CL=25044
2009-02-13add composite literal ( ) syntax.Russ Cox4-149/+193
warn about composite literal { } syntax. R=ken OCL=25018 CL=25023
2009-02-11require type assertions when narrowing.Russ Cox3-27/+72
R=ken OCL=24350 CL=24914
2009-02-10fix export bug Rob tripped over.Russ Cox1-8/+0
the lexer is already hiding names, so this clumsy hack is no longer necessary. R=ken OCL=24783 CL=24783
2009-02-10Implement unsafe.Alignof.Ian Lance Taylor3-1/+20
R=ken DELTA=20 (19 added, 0 deleted, 1 changed) OCL=24719 CL=24771
2009-02-08add error to catch 6g alignment bug.Russ Cox1-0/+5
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-08gc funarg return fix.Russ Cox1-2/+5
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-07update sysimport.c for unsafe.Offset and SizeofRob Pike1-0/+2
R=ken DELTA=2 (2 added, 0 deleted, 0 changed) OCL=24643 CL=24643
2009-02-07unsafe.Sizeof and unsafe.OffsetofKen Thompson4-1/+57
R=r OCL=24639 CL=24639
2009-02-06closures - 6g supportRuss Cox7-58/+239
R=ken OCL=24501 CL=24566