Rob Pike
50d0695ccf
use unsafe.pointer in reflection objects
...
R=rsc
DELTA=326 (4 added, 259 deleted, 63 changed)
OCL=20853
CL=20856
2008-12-09 15:41:21 -08:00
Robert Griesemer
4ad804679d
- snapshot if current state
...
- fix pretty printer to work with new tabwriter interface
R=r
OCL=20854
CL=20854
2008-12-09 15:29:15 -08:00
Robert Griesemer
6cbdeb3f88
- fixed bug with unicode text formatting: the number of bytes
...
per rune cannot be computed correctly if we have only parts
of a rune - delay computation
- added html filtering mode: html tags and entities are ignored
for width computations
- expanded tests:
- extra tests for html text
- extra tests that write text in various portions
R=r
DELTA=227 (126 added, 20 deleted, 81 changed)
OCL=20833
CL=20835
2008-12-09 13:03:15 -08:00
Ken Thompson
92a1190c6c
robs bug converting unsafe.pointer
...
R=r
OCL=20834
CL=20834
2008-12-09 13:00:50 -08:00
Russ Cox
0d9c1abb58
replace assembly casts with unsafe.pointer
...
R=r
DELTA=178 (18 added, 101 deleted, 59 changed)
OCL=20822
CL=20826
2008-12-09 10:57:55 -08:00
Russ Cox
f58567d6e2
more impossible time errors
...
R=r
DELTA=4 (0 added, 0 deleted, 4 changed)
OCL=20788
CL=20818
2008-12-09 10:27:30 -08:00
Ken Thompson
bf6164719a
conversion to/from
...
any pointer or uintptr
and unsafe.pointer
R=r
OCL=20795
CL=20795
2008-12-08 20:50:17 -08:00
Ken Thompson
1d4daa2d39
foundation for import unsafe
...
R=r
OCL=20794
CL=20794
2008-12-08 19:46:39 -08:00
Russ Cox
6478df1c41
avoid skew in time.Tick; remove errors from time.Seconds, time.Nanoseconds
...
R=r
DELTA=46 (21 added, 10 deleted, 15 changed)
OCL=20785
CL=20787
2008-12-08 17:45:50 -08:00
Russ Cox
be629138ab
use Note sched.stopped correctly
...
R=r
DELTA=6 (5 added, 0 deleted, 1 changed)
OCL=20777
CL=20779
2008-12-08 17:14:08 -08:00
Russ Cox
4d6bccb0f1
pick up symbol for JMP main(SB)
...
but not JMP main (label).
R=ken
OCL=20724
CL=20724
2008-12-08 11:33:04 -08:00
Ian Lance Taylor
48e5110151
Tweak comments so that this test passes with gccgo.
...
bug126.go:7:7: error: redefinition of 'none'
bug126.go:6:7: note: previous definition of 'none' was here
R=gri
DELTA=3 (1 added, 0 deleted, 2 changed)
OCL=20563
CL=20723
2008-12-08 11:31:55 -08:00
Ken Thompson
b79272d9a2
allowed syntax for range
...
a range m (implies :=)
a,b range m (implies :=)
a:b range m (implies :=)
a := range m
a,b := range m
a:b := range m
a = range m
a,b = range m
a:b = range m
R=r
OCL=20676
CL=20676
2008-12-06 13:40:30 -08:00
Ken Thompson
26b357ca5b
range statement
...
R=r
OCL=20667
CL=20667
2008-12-05 18:24:05 -08:00
Rob Pike
2fe97c336d
test pairwise iota assignment
...
R=rsc
DELTA=13 (13 added, 0 deleted, 0 changed)
OCL=20638
CL=20641
2008-12-05 15:37:09 -08:00
Russ Cox
3f8aa662e9
add support for ref counts to memory allocator.
...
mark and sweep, stop the world garbage collector
(intermediate step in the way to ref counting).
can run pretty with an explicit gc after each file.
R=r
DELTA=502 (346 added, 143 deleted, 13 changed)
OCL=20630
CL=20635
2008-12-05 15:24:18 -08:00
Rob Pike
73120ee81d
use sync.Mutex instead of a channel for locking
...
R=rsc
DELTA=12 (3 added, 1 deleted, 8 changed)
OCL=20631
CL=20634
2008-12-05 15:18:07 -08:00
Ian Lance Taylor
cc352e5c1c
The DejaGNU testsuite harness used by the gccgo testsuite is
...
broken if you give it something which matches everything--the
.* swallows all the error messages. Recognize some reasonable
error text directly.
R=rsc
DELTA=2 (0 added, 0 deleted, 2 changed)
OCL=20564
CL=20595
2008-12-05 10:20:34 -08:00
Robert Griesemer
8aeb8647c5
- handle UTF-8 text in tabwriter
...
R=r
DELTA=84 (27 added, 3 deleted, 54 changed)
OCL=20539
CL=20584
2008-12-05 09:22:13 -08:00
Russ Cox
c1868bc89d
malloc fixes.
...
can run peano 10 in 100 MB (instead of 1+ GB) of memory
when linking against this.
can run peano 11 in 1 GB of memory now.
R=r
DELTA=100 (44 added, 44 deleted, 12 changed)
OCL=20504
CL=20553
2008-12-04 21:04:26 -08:00
Russ Cox
0d1cbaf225
strings.utflen -> utf8.RuneCount, RuneCountInString
...
R=r
DELTA=94 (52 added, 33 deleted, 9 changed)
OCL=20547
CL=20552
2008-12-04 21:00:34 -08:00
Rob Pike
94a66489ed
bug128 is fixed
...
R=rsc
DELTA=43 (19 added, 24 deleted, 0 changed)
OCL=20551
CL=20551
2008-12-04 20:51:47 -08:00
Robert Griesemer
77aaf4f3a2
- adjusted const decl grammar to reflect spec changes
...
- first cut at html writer (will do html escaping, html tag production)
- first cut at generating basic html output via pretty
- some cleanups
R=r
OCL=20550
CL=20550
2008-12-04 18:18:41 -08:00
Robert Griesemer
7354b864b5
Revised proposal for const/var cleanup, with
...
Ken's suggestion for the "iota" extension to tuples.
DELTA=171 (88 added, 57 deleted, 26 changed)
OCL=20460
CL=20544
2008-12-04 17:33:37 -08:00
Ken Thompson
a0a14b98fa
empty switches -- bug128
...
R=r
OCL=20520
CL=20522
2008-12-04 16:05:40 -08:00
Ken Thompson
c597845e13
const/var/iota declarations as discussed
...
R=r
OCL=20506
CL=20506
2008-12-04 15:33:40 -08:00
Russ Cox
afa6424078
don't warn anymore about missing imports
...
(happens legitimately in c and assembly objects).
R=r
DELTA=1 (0 added, 0 deleted, 1 changed)
OCL=20497
CL=20499
2008-12-04 14:59:38 -08:00
Russ Cox
cfb9425460
emit dynamically linked 6.out on darwin instead of static,
...
unless given -d flag.
the resulting binary doesn't *use* any dynamic libraries,
it just has a reference to the dynamic linker and an
empty list of needed symbols and libraries.
this is enough to make 6.out binaries that can be run
under dtrace / dtruss.
R=r
DELTA=39 (34 added, 0 deleted, 5 changed)
OCL=20476
CL=20482
2008-12-04 13:49:45 -08:00
Ian Lance Taylor
1a19cb8ec0
Make run.bash run all the current tests.
...
R=r,rsc
DELTA=8 (8 added, 0 deleted, 0 changed)
OCL=20468
CL=20473
2008-12-04 13:14:09 -08:00
Russ Cox
bf3dd3f0ef
add mutex.Mutex
...
R=r
DELTA=349 (348 added, 0 deleted, 1 changed)
OCL=20380
CL=20472
2008-12-04 12:51:36 -08:00
Russ Cox
3e8faa640f
fix build - forgot these files
...
TBR=r
OCL=20448
CL=20448
2008-12-04 10:18:53 -08:00
Russ Cox
79e1db2da1
add stub routines stackalloc() and stackfree().
...
run oldstack on g0's stack, just like newstack does,
so that oldstack can free the old stack.
R=r
DELTA=53 (44 added, 0 deleted, 9 changed)
OCL=20404
CL=20433
2008-12-04 08:30:54 -08:00
Russ Cox
c7bab46d0f
add time.Tick()
...
R=r
DELTA=130 (115 added, 1 deleted, 14 changed)
OCL=20376
CL=20385
2008-12-03 16:40:00 -08:00
Robert Griesemer
2dba9a66e2
- fixed a bug with import printing (missing separator between alias and string)
...
- rewrote declaration printing - was unreadable before
- no semicolons after closing "}" for types
R=r
OCL=20379
CL=20379
2008-12-03 15:47:30 -08:00
Russ Cox
dfa5893d4f
preparation for exec.
...
* syscall:
add syscall.RawSyscall, which doesn't use sys.entersyscall/sys.exitsyscall
add syscall.dup2
add syscall.BytePtrPtr
add syscall.Rusage, RusagePtr
add syscall.F_GETFD, F_SETFD, FD_CLOEXEC
* runtime:
clean up, correct signal handling.
can now survive (continue running after) a signal.
R=r
DELTA=394 (286 added, 51 deleted, 57 changed)
OCL=20351
CL=20369
2008-12-03 14:21:28 -08:00
Russ Cox
2b39165f1e
clean stack trace code.
...
format is unchanged but shows all frames
(old loop stopped one frame early).
wreck=; 6.out
cannot convert type *main.S·interface2 to interface main.I·interface2: missing method Foo
throw: interface conversion
SIGSEGV: segmentation violation
Faulting address: 0x0
pc: 0x256d
throw+0x46 /home/rsc/go/src/runtime/runtime.c:68
throw(0x863a, 0x0)
hashmap+0x188 /home/rsc/go/src/runtime/iface.c:167
hashmap(0x8760, 0x0, 0x85b0, 0x0, 0x0, ...)
sys·ifaceT2I+0xa8 /home/rsc/go/src/runtime/iface.c:201
sys·ifaceT2I(0x8760, 0x0, 0x85b0, 0x0, 0x0, ...)
main·main+0x4e /home/rsc/go/src/runtime/rt0_amd64_darwin.s:87
main·main()
mainstart+0xf /home/rsc/go/src/runtime/rt0_amd64.s:70
mainstart()
sys·goexit /home/rsc/go/src/runtime/proc.c:110
sys·goexit()
R=r
DELTA=44 (5 added, 15 deleted, 24 changed)
OCL=20358
CL=20368
2008-12-03 14:20:23 -08:00
Russ Cox
32a1ee85b1
Make strconv.atof("-0") return -0
...
and update test.
R=iant
DELTA=11 (3 added, 1 deleted, 7 changed)
OCL=20350
CL=20362
2008-12-03 13:29:13 -08:00
Ken Thompson
f8797daa9f
import/export of exact mp floating constants
...
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
2008-12-03 13:17:26 -08:00
Russ Cox
98431dbfff
golden.out drift
...
TBR=r
OCL=20352
CL=20355
2008-12-03 13:05:56 -08:00
Robert Griesemer
4d76e8e142
- bug: empty switches don't compile
...
R=rsc
DELTA=32 (28 added, 3 deleted, 1 changed)
OCL=20301
CL=20340
2008-12-03 10:41:43 -08:00
Ken Thompson
c8a66a98ff
small code improvement to
...
used scaled indexing
R=r
OCL=20308
CL=20310
2008-12-02 19:54:51 -08:00
Ken Thompson
89996e1fb1
truncating of float constants when
...
used in float64 or float32 contexts
R=r
OCL=20297
CL=20297
2008-12-02 17:03:47 -08:00
Robert Griesemer
acfd1fd443
- oversight: extra allow source-level line breaks inside statement lists
...
- fixed printing of empty structs/interfaces
- enable two more tests
R=r
OCL=20296
CL=20296
2008-12-02 17:01:31 -08:00
Robert Griesemer
cb67a8324b
- fine-tuning of white space
...
- by default consider extra newlines in src for better formatting
- additional flags for control (-newlines, -maxnewlines, -optsemicolons)
- don't print ()'s around single anonymous result types
Status: Comparing the output of pretty with the input for larger files
shows mostly whitespace/formatting differences, which is what is desired.
TODO:
- Handling of overlong lines
- some esoteric cases which look funny
R=r
OCL=20293
CL=20293
2008-12-02 16:49:44 -08:00
Russ Cox
1e1a3c5054
6g gives no error on "0 != nil"
...
R=ken
OCL=20289
CL=20289
2008-12-02 16:35:00 -08:00
Ian Lance Taylor
748287d49e
The flag and fmt libraries are now available from gccgo by
...
default. Fix PRETTY_OBJS to include compilation.o rather than
compilation.go.
R=gri
DELTA=10 (0 added, 8 deleted, 2 changed)
OCL=20248
CL=20257
2008-12-02 12:52:47 -08:00
Russ Cox
28a30254e7
remove reference to non-existent mparith.h
...
R=ken
OCL=20188
CL=20188
2008-12-01 17:35:15 -08:00
Robert Griesemer
b0192ea1a5
bug: constants should not be redeclarable
...
R=rsc
DELTA=9 (9 added, 0 deleted, 0 changed)
OCL=20187
CL=20187
2008-12-01 17:27:57 -08:00
Ken Thompson
3fa4610601
multi precision floating point
...
R=r
OCL=20185
CL=20185
2008-12-01 17:22:05 -08:00
Robert Griesemer
37bdd3c3f5
- enabled comment printing by default
...
- changed tab width to 8 chars by default to make test run properly
- excluded 4 files that are not idempotently printed
- fixed a couple of incorrect file position recordings in parser
- fine-tuned layout engine
- white-space formatting reasonable, but not perfect
- no handling of overlong lines
R=r
To use with smaller tabs: pretty -tabwidth=4 file.go
To use with blanks instead of tabs: pretty -usetabs=0 file.go
OCL=20184
CL=20184
2008-12-01 17:20:59 -08:00