Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
various cleanup, deleting unused code
R=ken2
CC=golang-dev
http://codereview.appspot.com/1663041
|
|
Cleans up a few other corner cases too.
R=ken2
CC=golang-dev
http://codereview.appspot.com/1592045
|
|
R=ken2
CC=golang-dev
http://codereview.appspot.com/1597043
|
|
* Code for assignment, conversions now mirrors spec.
* Changed some snprint -> smprint.
* Renamed runtime functions to separate
interface conversions from type assertions:
convT2I, assertI2T, etc.
* Correct checking of \U sequences.
Fixes issue 840.
Fixes issue 830.
Fixes issue 778.
R=ken2
CC=golang-dev
http://codereview.appspot.com/1303042
|
|
import and export
R=rsc
CC=golang-dev
http://codereview.appspot.com/214050
|
|
R=ken2
CC=golang-dev
http://codereview.appspot.com/193079
|
|
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
http://codereview.appspot.com/186263
Committer: Russ Cox <rsc@golang.org>
|
|
* 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
http://codereview.appspot.com/190076
|
|
because they are in package runtime.
another step to enforcing package boundaries.
R=r
DELTA=732 (114 added, 93 deleted, 525 changed)
OCL=35811
CL=35824
|
|
R=ken
OCL=34859
CL=34865
|
|
in the presence of yacc lookahead.
better but still not perfect
R=ken
OCL=33541
CL=33541
|
|
R=ken
OCL=33108
CL=33113
|
|
R=ken
OCL=33063
CL=33095
|
|
still to do:
* initializer cycle detection
* nicer error for type checking cycles
R=ken
OCL=32855
CL=32880
|
|
collapse a lot of duplication in dcl.c
switch to NodeList* from Dcl*
R=ken
OCL=32770
CL=32770
|
|
R=ken
OCL=32750
CL=32753
|
|
consts in the same factored block
const (
X = Y;
Y = 2;
)
R=ken
OCL=31782
CL=31782
|
|
(in the same package).
allow forward method declaration to be satisfied
by implementation in another file (in the same package).
all methods must be declared in the same file
as the receiver type.
R=ken
OCL=30864
CL=30869
|
|
* no longer distinguishes const, var, type, package names.
* all the predefined names are not tokens anymore.
R=ken
OCL=29326
CL=29985
|
|
take 2
R=ken
OCL=29304
CL=29306
|
|
*** Reason for rollback ***
too many files included
*** Original change description ***
simplifying grammar: delete LBASETYPE and LACONST
R=ken
OCL=29303
CL=29303
|
|
R=ken
OCL=29300
CL=29302
|
|
new type equality restrictions
better handling of renamed packages
"sys" is no longer available to programs
R=ken
OCL=28553
CL=28578
|
|
R=ken
OCL=28559
CL=28562
|
|
various bug fixes and tests involving constants.
test/const1.go is the major new test case.
R=ken
OCL=26216
CL=26224
|
|
the lexer is already hiding names,
so this clumsy hack is no longer necessary.
R=ken
OCL=24783
CL=24783
|
|
R=ken
OCL=23958
CL=23961
|
|
* rename init functions
R=ken
OCL=23122
CL=23126
|
|
R=r
OCL=22978
CL=22984
|
|
format from hex to decimal, confusing
ar's strcmp-based value comparison.
switched export format to "true" or "false"
to keep bools separate from ints.
R=ken
OCL=22944
CL=22944
|
|
print names in message.
R=ken
OCL=22891
CL=22891
|
|
R=ken
OCL=22887
CL=22887
|
|
make package local the default.
warn about name case not matching export keyword.
R=ken
OCL=22881
CL=22886
|
|
remove TPTR wrapper around TMAP, TCHAN, TSTRING.
R=ken
OCL=22406
CL=22409
|
|
file in which they occur. avoids duplicate
trampoline generation across multiple files.
R=ken
OCL=20976
CL=20980
|
|
new syntax for exact mp floating constants
decimal_int ( "p" | "P" ) [ "+" | "-" ] decimal_int
the value is decimal1 * 2^decimal2
R=r
OCL=20357
CL=20357
|
|
R=ken
OCL=19299
CL=19299
|
|
R=r
DELTA=129 (81 added, 0 deleted, 48 changed)
OCL=19283
CL=19291
|
|
R=r
DELTA=13 (5 added, 0 deleted, 8 changed)
OCL=18190
CL=18192
|
|
they're gone.
R=ken
OCL=17569
CL=17569
|
|
* print int as int, not P.int
* write type info for non-exported types
in its own new section.
ar:
skip over rest of line after $$
R=ken
OCL=17568
CL=17568
|
|
make sure methods end up immediately following
the struct they are methods on.
ar:
eliminate duplicate definitions from __.PKGDEF.
check that multiple .6 do not give different defs for same
exported type/var/func/const.
increase ar header name size from 16 to 64 bytes
R=r
DELTA=379 (333 added, 18 deleted, 28 changed)
OCL=17477
CL=17481
|
|
R=ken
OCL=17377
CL=17377
|