Russ Cox
cce10dacc6
gc: fix select line number
...
Fixes #1393 .
R=ken2
CC=golang-dev
https://golang.org/cl/4811054
2011-07-26 00:52:17 -04:00
Russ Cox
58e19aa4cb
go: require { } around else block
...
R=gri, ken, r
CC=golang-dev
https://golang.org/cl/4721044
2011-07-14 17:15:52 -04:00
Russ Cox
ff4518da17
gc: fix package quoting logic
...
The decision for when to say "hash/crc32".New instead of
crc32.New in an error was double-counting imports
from different packages or indirect imports, so it was
quoting even when there was no ambiguity.
R=ken2
CC=golang-dev
https://golang.org/cl/4645070
2011-06-28 23:58:35 -04:00
Russ Cox
6aaa86ff66
gc: avoid package name ambiguity in error messages
...
Fixes #2006 .
R=ken2
CC=golang-dev
https://golang.org/cl/4643056
2011-06-27 18:44:30 -04:00
Russ Cox
7f4c5ea7d8
gc: implement goto restriction
...
Remove now-unnecessary zeroing of stack frames.
R=ken2
CC=golang-dev
https://golang.org/cl/4641044
2011-06-17 15:25:05 -04:00
Luuk van Dijk
56668283f1
gc: allow tags on parameters in export section of object files.
...
This is in preparation of escape analysis; function parameters
can now be tagged with interesting bits by the compiler by
assigning to n->note.
tested by having typecheck put a fake tag on all parameters of
pointer type and compiling the tree.
R=rsc
CC=golang-dev
https://golang.org/cl/4524092
2011-06-03 03:54:56 +02:00
Anthony Martin
67b4db9e9e
gc: check parameter declarations in interface fields
...
Fixes #1663 .
Fixes #1871 .
R=rsc, lstoakes
CC=golang-dev
https://golang.org/cl/4530084
2011-05-31 13:41:32 -04:00
Russ Cox
5ff3336490
gc: correct handling of unexported method names in embedded interfaces
...
go/types: update for export data format change
reflect: require package qualifiers to match during interface check
runtime: require package qualifiers to match during interface check
test: fixed bug324, adapt to be silent
Fixes #1550 .
Issue 1536 remains open.
R=gri, ken2, r
CC=golang-dev
https://golang.org/cl/4442071
2011-04-21 08:14:50 -04:00
Russ Cox
017e73c1b2
gc: fix func syntax error
...
Fixes #1685 .
R=ken2
CC=golang-dev
https://golang.org/cl/4414042
2011-04-13 22:48:21 -04:00
Russ Cox
8bf34e3356
gc, runtime: replace closed(c) with x, ok := <-c
...
R=ken2, ken3
CC=golang-dev
https://golang.org/cl/4259064
2011-03-11 14:47:26 -05:00
Russ Cox
52943bfe4d
gc: require if condition
...
R=ken2, r2
CC=golang-dev
https://golang.org/cl/4195045
2011-02-22 18:23:29 -05:00
Russ Cox
c1a695c160
gc, ld: package name main no longer reserved
...
R=ken2
CC=golang-dev
https://golang.org/cl/4128054
2011-02-03 14:17:20 -05:00
Russ Cox
05b9050bda
gc: handle invalid name in type switch
...
Fixes #1453 .
R=ken2
CC=golang-dev
https://golang.org/cl/4125043
2011-02-01 14:00:36 -05:00
Russ Cox
0e47460915
gc: fix send precedence
...
Test and fix case found by Robert.
Add receive inside send to tree too.
R=ken2
CC=golang-dev
https://golang.org/cl/3973052
2011-02-01 08:29:21 -05:00
Russ Cox
cb584707af
gc: remove non-blocking send, receive syntax
...
R=ken2
CC=golang-dev
https://golang.org/cl/4126043
2011-01-31 18:52:16 -05:00
Eoghan Sherry
6aa85d1cbe
gc: fix method offsets of anonymous interfaces
...
Fixes #1290 .
R=rsc
CC=golang-dev
https://golang.org/cl/3259043
2010-12-07 12:56:26 -05:00
Russ Cox
8ffc4ec5d0
gc: implement new composite literal spec
...
R=ken2
CC=golang-dev
https://golang.org/cl/2350041
2010-10-21 23:17:20 -04:00
Russ Cox
a3c682267f
gc: various bugs
...
Fixes #1016 .
Fixes #1152 .
Fixes #1153 .
R=ken2
CC=golang-dev
https://golang.org/cl/2344042
2010-10-03 11:50:44 -04:00
Russ Cox
9b62461a8f
gc: allow select case expr = <-c
...
Fixes #1139 .
R=ken2
CC=golang-dev
https://golang.org/cl/2194046
2010-09-27 12:04:21 -04:00
Russ Cox
75dd8fdb34
gc: ... changes
...
R=ken2, ken3
CC=golang-dev
https://golang.org/cl/2208047
2010-09-24 11:55:30 -04:00
Russ Cox
1678dcc378
gc: more accurate line numbers for ATEXT
...
and other begin and end of function code
R=ken2
CC=golang-dev
https://golang.org/cl/2158044
2010-09-09 17:11:51 -04:00
Scott Lawrence
fce222a95b
gc: implement new slice spec
...
Fixes #382 .
R=gri, cw, r, rsc
CC=golang-dev
https://golang.org/cl/1957045
2010-09-08 22:20:29 -04:00
Russ Cox
1cb951d994
gc: appease bison version running on FreeBSD builder
...
R=ken2
CC=golang-dev
https://golang.org/cl/2141042
2010-09-02 14:31:39 -04:00
Russ Cox
dea283750b
gc: fix spurious syntax error
...
Fixes #1071 .
R=ken2
CC=golang-dev
https://golang.org/cl/2136043
2010-09-02 14:16:01 -04:00
Russ Cox
b1311cbc93
gc: fix parenthesization check
...
Cannot use paren field in Node because all
instances of a given symbol name use the same Node.
Fixes #1022 .
R=ken2
CC=golang-dev
https://golang.org/cl/2015043
2010-08-23 23:10:25 -04:00
Russ Cox
c6cb303a8a
gc: bug299, bug300
...
R=ken2
CC=golang-dev
https://golang.org/cl/1731057
2010-08-03 00:53:32 -07:00
Russ Cox
691d765121
gc: bug274
...
R=ken2
CC=golang-dev
https://golang.org/cl/1742044
2010-07-15 15:05:56 -07:00
Russ Cox
d5a80d0ba4
gc: no more ...
...
various cleanup, deleting unused code
R=ken2
CC=golang-dev
https://golang.org/cl/1663041
2010-06-14 11:24:51 -07:00
Russ Cox
76da2780c3
gc: less aggressive name binding, for better line numbers in errors
...
Cleans up a few other corner cases too.
R=ken2
CC=golang-dev
https://golang.org/cl/1592045
2010-06-12 11:17:24 -07:00
Russ Cox
d20ad1c75a
gc: change -u to require imports to be marked safe
...
R=ken2
CC=golang-dev
https://golang.org/cl/1597043
2010-06-11 15:28:43 -07:00
Robert Griesemer
98b27814ae
gc: better error message when ~ operator is found
...
Fixes #844 .
R=ken2, rsc, ken3
CC=golang-dev
https://golang.org/cl/1593041
2010-06-07 18:27:26 -07:00
Russ Cox
8c2bc4419b
gc: fix shift/reduce conflict in go.y export syntax
...
Fixes #771 .
R=ken2
CC=golang-dev
https://golang.org/cl/1267042
2010-05-24 16:55:23 -07:00
Russ Cox
2e9b67afa6
gc: bug277 - new conversion syntax
...
R=ken2
CC=golang-dev
https://golang.org/cl/1220046
2010-05-24 15:25:30 -07:00
Russ Cox
d6e4e18c8c
gc: more specific error for statements at top level
...
R=ken2, r, ken3
CC=golang-dev
https://golang.org/cl/1006041
2010-04-26 22:35:27 -07:00
Russ Cox
fe7826858c
gc: make sure main.main has correct type
...
R=ken2
CC=golang-dev
https://golang.org/cl/883049
2010-04-11 14:51:35 -07:00
Ken Thompson
713e3e1541
more complex - constants
...
import and export
R=rsc
CC=golang-dev
https://golang.org/cl/214050
2010-02-18 14:46:28 -08:00
Russ Cox
68796b0270
gc: add ... T, rework plain ...
...
No longer a distinct type; now a property of func types.
R=ken2
CC=golang-dev
https://golang.org/cl/197042
2010-02-01 00:25:59 -08:00
Russ Cox
2a01d72878
gc: improved syntax errors
...
* example-based syntax errors (go.errors)
* enable bison's more specific errors
and translate grammar token names into
tokens like ++
* test cases
R=ken2, r, ken3
CC=golang-dev
https://golang.org/cl/194085
2010-01-26 23:13:22 -08:00
Russ Cox
7abb4b3a96
gc: fix chan <- chan precedence.
...
also allow func() func().
R=ken2
CC=golang-dev
https://golang.org/cl/194078
2010-01-26 10:40:28 -08:00
Russ Cox
531e6b77c8
eliminate package global name space
...
R=ken2
CC=golang-dev
https://golang.org/cl/194071
2010-01-25 18:31:35 -08:00
Russ Cox
1cecac8134
gc: record full package paths in runtime type data
...
detect compilation of special package runtime with
compiler flag instead of package name.
R=ken2
CC=golang-dev
https://golang.org/cl/193080
2010-01-24 23:33:59 -08:00
Russ Cox
fd150e77e1
gc: cut some dead code, fix 6g -S output
...
R=ken2
CC=golang-dev
https://golang.org/cl/193079
2010-01-24 22:36:26 -08:00
Russ Cox
758f2bc556
eliminate the package global name space assumption in object files
...
5g/6g/8g: add import statements to export metadata, mapping package path to package name.
recognize "" as the path of the package in export metadata.
use "" as the path of the package in object symbol names.
5c/6c/8c, 5a/6a/8a: rewrite leading . to "". so that ·Sin means Sin in this package.
5l/6l/8l: rewrite "" in symbol names as object files are read.
gotest: handle new symbol names.
gopack: handle new import lines in export metadata.
Collectively, these changes eliminate the assumption of a global
name space in the object file formats. Higher level pieces such as
reflect and the computation of type hashes still depend on the
assumption; we're not done yet.
R=ken2, r, ken3
CC=golang-dev
https://golang.org/cl/186263
2010-01-22 17:06:20 -08:00
Russ Cox
a6736fa4ff
cleanup toward eliminating package global name space
...
* switch to real dot (.) instead of center dot (·) everywhere in object files.
before it was half and half depending on where in the name it appeared.
* in 6c/6a/etc identifiers, · can still be used but turns into . immediately.
* in export metadata, replace package identifiers with quoted strings
(still package names, not paths).
R=ken2, r
CC=golang-dev
https://golang.org/cl/190076
2010-01-19 21:34:44 -08:00
Russ Cox
c715b58dad
gc: fix import name resolution
...
Fixes #403 .
R=ken2
https://golang.org/cl/180052
2009-12-15 16:44:28 -08:00
Russ Cox
101f499fa5
gc: allow ... in method lists
...
R=ken2
https://golang.org/cl/179070
2009-12-15 16:20:37 -08:00
Russ Cox
d122bb2193
gc: double-check usage of ...
...
Fixes #423 .
R=ken2
https://golang.org/cl/180045
2009-12-15 14:26:50 -08:00
Russ Cox
978c3e96d1
gc: fix comment
...
R=gri
CC=golang-dev
https://golang.org/cl/174077
2009-12-13 12:11:56 -08:00
Russ Cox
3997495dc3
gc: semicolons
...
Fixes #89 .
Fixes #92 .
Fixes #118 .
Fixes #182 .
Fixes #328 .
Fixes #340 .
R=ken2, ken3
CC=golang-dev
https://golang.org/cl/172049
2009-12-11 15:59:41 -08:00
Russ Cox
e733766dda
gc: minor import grammar bug fixes
...
Fixes #364 .
R=ken2
https://golang.org/cl/164092
2009-12-03 00:10:32 -08:00