- 17 Dec, 2012 24 commits
-
-
Robert Griesemer authored
R=rsc, alex.brainman CC=golang-dev https://golang.org/cl/6948066
-
Rémy Oudompheng authored
Fixes #4518. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6932045
-
Dave Cheney authored
Fixes #4481. hello-world-core.gz was generated with a simple hello world c program and core dumped as suggested in the issue. Also: add support for gz compressed test fixtures. R=minux.ma, rsc, iant CC=golang-dev https://golang.org/cl/6936058
-
Dave Cheney authored
Fixes #4502. R=rsc CC=golang-dev https://golang.org/cl/6949058
-
Brad Fitzpatrick authored
Fixes #4531 R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6937069
-
Robert Griesemer authored
Details: - fixed variadic parameter passing and calls of the form f(g()) - fixed implementation of ^x for unsigned constants x - fixed assignability of untyped booleans - resolved a few TODOs, various minor fixes - enabled many more tests (only 6 std packages don't typecheck) R=rsc CC=golang-dev https://golang.org/cl/6930053
-
Russ Cox authored
This is expensive but it might be useful in cases where people are suffering from false positives during garbage collection and are willing to trade the CPU time for getting rid of the false positives. On the other hand it only eliminates false positives caused by other function calls, not false positives caused by dead temporaries stored in the current function call. The 5g/6g/8g changes were pulled out of the history, from the last time we needed to do this (to work around a goto bug). The code in go.h, lex.c, pgen.c is new but tiny. R=ken2 CC=golang-dev https://golang.org/cl/6938073
-
Shenghou Ma authored
reader.Read() can return both 0,nil and len(buf),err. To be safe, we use io.ReadFull instead of doing reader.Read directly. Fixes #3472. R=bradfitz, rsc, ality CC=golang-dev https://golang.org/cl/6285050
-
Anthony Martin authored
This decreases the amount of system calls during the first call to Getenv. Calling Environ will still read in all environment variables and populate the cache. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6939048
-
Shenghou Ma authored
Fixes #3729. R=rsc CC=golang-dev https://golang.org/cl/6938052
-
Anthony Martin authored
With this change the runtime can now read GOMAXPROCS, GOGC, etc. I'm not quite sure how we missed this. R=seed, lucio.dere, rsc CC=golang-dev https://golang.org/cl/6935062
-
Russ Cox authored
Update #4555. R=gri, iant CC=golang-dev https://golang.org/cl/6944059
-
Rick Arnold authored
A data race was found in TestSendMail by the race detector. Fixes #4559. R=golang-dev, bradfitz, dave, rsc CC=golang-dev https://golang.org/cl/6944057
-
Shenghou Ma authored
there is no concept of “undefined” variables for Expand。 R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6946063
-
Shenghou Ma authored
Fixes #4548. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6944053
-
Shenghou Ma authored
R=golang-dev, rsc, bradfitz CC=golang-dev https://golang.org/cl/6935061
-
Christopher Nielsen authored
Fixes #4051 R=golang-dev, minux.ma, rsc CC=golang-dev https://golang.org/cl/6943063
-
Dmitriy Vyukov authored
The code: func main() { v := make([]int64, 10) i := 1 _ = v[(i*4)/3] } crashes compiler with: Program received signal SIGSEGV, Segmentation fault. 0x000000000043c274 in walkexpr (np=0x7fffffffc9b8, init=0x0) at src/cmd/gc/walk.c:587 587 *init = concat(*init, n->ninit); (gdb) bt #0 0x000000000043c274 in walkexpr (np=0x7fffffffc9b8, init=0x0) at src/cmd/gc/walk.c:587 #1 0x0000000000432d15 in copyexpr (n=0x7ffff7f69a48, t=<optimized out>, init=0x0) at src/cmd/gc/subr.c:2020 #2 0x000000000043f281 in walkdiv (init=0x0, np=0x7fffffffca70) at src/cmd/gc/walk.c:2901 #3 walkexpr (np=0x7ffff7f69760, init=0x0) at src/cmd/gc/walk.c:956 #4 0x000000000043d801 in walkexpr (np=0x7ffff7f69bc0, init=0x0) at src/cmd/gc/walk.c:988 #5 0x000000000043cc9b in walkexpr (np=0x7ffff7f69d38, init=0x0) at src/cmd/gc/walk.c:1068 #6 0x000000000043c50b in walkexpr (np=0x7ffff7f69f50, init=0x0) at src/cmd/gc/walk.c:879 #7 0x000000000043c50b in walkexpr (np=0x7ffff7f6a0c8, init=0x0) at src/cmd/gc/walk.c:879 #8 0x0000000000440a53 in walkexprlist (l=0x7ffff7f6a0c8, init=0x0) at src/cmd/gc/walk.c:357 #9 0x000000000043d0bf in walkexpr (np=0x7fffffffd318, init=0x0) at src/cmd/gc/walk.c:566 #10 0x00000000004402bf in vmkcall (fn=<optimized out>, t=0x0, init=0x0, va=0x7fffffffd368) at src/cmd/gc/walk.c:2275 #11 0x000000000044059a in mkcall (name=<optimized out>, t=0x0, init=0x0) at src/cmd/gc/walk.c:2287 #12 0x000000000042862b in callinstr (np=0x7fffffffd4c8, init=0x7fffffffd568, wr=0, skip=<optimized out>) at src/cmd/gc/racewalk.c:478 #13 0x00000000004288b7 in racewalknode (np=0x7ffff7f68108, init=0x7fffffffd568, wr=0, skip=0) at src/cmd/gc/racewalk.c:287 #14 0x0000000000428781 in racewalknode (np=0x7ffff7f65840, init=0x7fffffffd568, wr=0, skip=0) at src/cmd/gc/racewalk.c:302 #15 0x0000000000428abd in racewalklist (l=0x7ffff7f65840, init=0x0) at src/cmd/gc/racewalk.c:97 #16 0x0000000000428d0b in racewalk (fn=0x7ffff7f5f010) at src/cmd/gc/racewalk.c:63 #17 0x0000000000402b9c in compile (fn=0x7ffff7f5f010) at src/cmd/6g/../gc/pgen.c:67 #18 0x0000000000419f86 in funccompile (n=0x7ffff7f5f010, isclosure=0) at src/cmd/gc/dcl.c:1414 #19 0x0000000000424161 in p9main (argc=<optimized out>, argv=<optimized out>) at src/cmd/gc/lex.c:431 #20 0x0000000000401739 in main (argc=<optimized out>, argv=<optimized out>) at src/lib9/main.c:35 The problem is nil init passed to mkcall(). R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6940045
-
Oling Cat authored
R=golang-dev, dsymonds CC=golang-dev https://golang.org/cl/6937065
-
Rémy Oudompheng authored
Those variables come from ancient times when reflect.Value was an interface. R=dave, rsc CC=golang-dev https://golang.org/cl/6946059
-
Rick Arnold authored
Add a Hello method that allows clients to set the server sent in the EHLO/HELO exchange; the default remains localhost. Based on CL 5555045 by rsc. Fixes #4219. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6946057
-
Jan Ziak authored
Details: - This CL is the conceptual skeleton of code found in CL 6114046 - The garbage collector uses struct Obj to specify memory blocks - scanblock() is putting found memory blocks into an intermediate buffer (xbuf) before adding/flushing them to the main work buffer (wbuf) - The main loop in scanblock() is replaced with a skeleton code that in the future will be able to recognize the type of objects and thus will improve the garbage collector's precision. For now, all objects are simply sequences of pointers so the precision of the garbage collector remains unchanged. - The code plugs .gcdata and .gcbss sections into the garbage collector. scanblock() in this CL is unable to make any use of this. R=rsc, dvyukov, remyoudompheng CC=dave, golang-dev, minux.ma https://golang.org/cl/6856121
-
Christopher Cahoon authored
Fixes #4499. R=rsc CC=golang-dev https://golang.org/cl/6931046
-
Russ Cox authored
Generated by addca. R=gobot CC=golang-dev https://golang.org/cl/6947067
-
- 16 Dec, 2012 2 commits
-
-
Andrew Gerrand authored
Generated by addca. R=gobot CC=golang-dev https://golang.org/cl/6951043
-
Mikio Hara authored
This CL breaks Go 1 API compatibility but it doesn't matter because previous ListenUnixgram doesn't work in any use cases, oops. The public API change is: -pkg net, func ListenUnixgram(string, *UnixAddr) (*UDPConn, error) +pkg net, func ListenUnixgram(string, *UnixAddr) (*UnixConn, error) Fixes #3875. R=rsc, golang-dev, dave CC=golang-dev https://golang.org/cl/6937059
-
- 15 Dec, 2012 2 commits
-
-
Rémy Oudompheng authored
Fixes #4545. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6937058
-
Mikio Hara authored
R=golang-dev, dsymonds CC=golang-dev https://golang.org/cl/6935059
-
- 14 Dec, 2012 6 commits
-
-
Jingcheng Zhang authored
Delete on a nil map is now a no-op. R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/6938054
-
Adam Langley authored
R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/6948050
-
James David Chalfant authored
Tests that here should be automatic retries if a database driver's connection returns ErrBadConn on Begin. See "TestTxErrBadConn" in sql_test.go R=golang-dev CC=golang-dev https://golang.org/cl/6942050
-
Dmitriy Vyukov authored
This includes GORACE history_size and log_path flags. This change is actually an addition to: https://golang.org/cl/6947046 race_linux_amd64.syso somehow fall out of it. R=minux.ma CC=golang-dev https://golang.org/cl/6946051
-
Dmitriy Vyukov authored
This includes GORACE history_size and log_path flags. R=golang-dev, bradfitz, rsc, remyoudompheng, minux.ma CC=golang-dev https://golang.org/cl/6947046
-
Alex Brainman authored
Ignore signals during "go run" and wait for running child process to exit. Stop executing further tests during "go test", wait for running tests to exit and report error exit code. Original CL 6351053 by dfc. Fixes #3572. Fixes #3581. R=golang-dev, dave, rsc CC=golang-dev https://golang.org/cl/6903061
-
- 13 Dec, 2012 6 commits
-
-
Ian Lance Taylor authored
I just committed a patch to gccgo that notices that float was never defined, causing an additional unmatched error message. Rename the type to avoid that message. R=golang-dev, minux.ma CC=golang-dev https://golang.org/cl/6947049
-
Nick Craig-Wood authored
I've been writing some code which involves syncing files (like rsync) and it became apparent that under Linux I could read modification times (os.Lstat) with nanosecond precision but only write them with microsecond precision. This difference in precision is rather annoying when trying to discover whether files need syncing or not! I've patched syscall and os to increases the accuracy of of os.Chtimes for Linux and Windows. This involved exposing the utimensat system call under Linux and a bit of extra code under Windows. I decided not to expose the "at" bit of the system call as it is impossible to replicate under Windows, so the patch adds syscall.Utimens() to all architectures along with a ImplementsUtimens flag. If the utimensat syscall isn't available (utimensat was added to Linux in 2.6.22, Released, 8 July 2007) then it silently falls back to the microsecond accuracy version it uses now. The improved accuracy for Windows should be good for all versions of Windows. Unfortunately Darwin doesn't seem to have a utimensat system call that I could find so I couldn't implement it there. The BSDs do, but since they share their syscall implementation with Darwin I couldn't figure out how to define a syscall for *BSD and not Darwin. I've left this as a TODO in the code. In the process I implemented the missing methods for Timespec under Windows which I needed which just happened to round out the Timespec API for all platforms! ------------------------------------------------------------ Test code: http://play.golang.org/p/1xnGuYOi4b Linux Before (1000 ns precision) $ ./utimetest.linux.before z Setting mtime 1344937903123456789: 2012-08-14 10:51:43.123456789 +0100 BST Reading mtime 1344937903123457000: 2012-08-14 10:51:43.123457 +0100 BST Linux After (1 ns precision) $ ./utimetest.linux.after z Setting mtime 1344937903123456789: 2012-08-14 10:51:43.123456789 +0100 BST Reading mtime 1344937903123456789: 2012-08-14 10:51:43.123456789 +0100 BST Windows Before (1000 ns precision) X:\>utimetest.windows.before.exe c:\Test.txt Setting mtime 1344937903123456789: 2012-08-14 10:51:43.123456789 +0100 GMTDT Reading mtime 1344937903123456000: 2012-08-14 10:51:43.123456 +0100 GMTDT Windows After (100 ns precision) X:\>utimetest.windows.after.exe c:\Test.txt Setting mtime 1344937903123456789: 2012-08-14 10:51:43.123456789 +0100 GMTDT Reading mtime 1344937903123456700: 2012-08-14 10:51:43.1234567 +0100 GMTDT R=golang-dev, alex.brainman, rsc, bradfitz CC=golang-dev https://golang.org/cl/6905057
-
Brad Fitzpatrick authored
Generated by addca. R=gobot CC=golang-dev https://golang.org/cl/6938051
-
Ian Lance Taylor authored
No need for a separate test for this. R=golang-dev, minux.ma, rsc CC=golang-dev https://golang.org/cl/6941045
-
Dave Cheney authored
5g: Prog went from 128 bytes to 88 bytes 6g: Prog went from 174 bytes to 144 bytes 8g: Prog went from 124 bytes to 92 bytes There may be a little more that can be squeezed out of Addr, but alignment will be a factor. All: remove the unused pun field from Addr R=rsc, minux.ma CC=golang-dev https://golang.org/cl/6922048
-
Shenghou Ma authored
Fix the build. R=golang-dev CC=golang-dev https://golang.org/cl/6946044
-