- 29 Oct, 2014 2 commits
-
-
Russ Cox authored
Fixes #8588. LGTM=austin R=austin CC=golang-codereviews, khr https://golang.org/cl/159700044
-
Russ Cox authored
goprintf is a printf-like print for Go. It is used in the code generated by 'defer print(...)' and 'go print(...)'. Normally print(1, 2, 3) turns into printint(1) printint(2) printint(3) but defer and go need a single function call to give the runtime; they give the runtime something like goprintf("%d%d%d", 1, 2, 3). Variadic functions like goprintf cannot be described in the new type information world, so we have to replace it. Replace with a custom function, so that defer print(1, 2, 3) turns into defer func(a1, a2, a3 int) { print(a1, a2, a3) }(1, 2, 3) (and then the print becomes three different printints as usual). Fixes #8614. LGTM=austin R=austin CC=golang-codereviews, r https://golang.org/cl/159700043
-
- 28 Oct, 2014 17 commits
-
-
David du Colombier authored
In CL 160670043 the write function was changed so a zero-length write is now allowed. This leads the ExampleWriter_Init test to fail. The reason is that Plan 9 preserves message boundaries, while the os library expects systems that don't preserve them. We have to ignore zero-length writes so they will never turn into EOF. This issue was previously discussed in CL 7406046. LGTM=bradfitz R=rsc, bradfitz CC=golang-codereviews https://golang.org/cl/163510043
-
Rob Pike authored
LGTM=rsc R=golang-codereviews, rsc CC=golang-codereviews https://golang.org/cl/166850043
-
Russ Cox authored
Also a few other minor changes. Fixes #8712. LGTM=r R=r CC=golang-codereviews https://golang.org/cl/164150043
-
Russ Cox authored
TBR=crawshaw CC=golang-codereviews https://golang.org/cl/162390043
-
Rob Pike authored
LGTM=rsc, aram, minux R=golang-codereviews, aram, minux, rsc CC=golang-codereviews https://golang.org/cl/162370045
-
Russ Cox authored
Fixes #9007. LGTM=iant, r R=r, iant CC=golang-codereviews https://golang.org/cl/160670043
-
Rob Pike authored
LGTM=rsc R=golang-codereviews, rsc CC=golang-codereviews https://golang.org/cl/165800043
-
Jens Frederich authored
Fixes #8787. LGTM=rsc R=rsc, dvyukov CC=golang-codereviews https://golang.org/cl/153670043
-
Russ Cox authored
No easy way to test (would have to actually trigger some routing events from kernel) but the code is clearly wrong as written. If the header says there is a submessage, we need to at least skip over its bytes, not just continue to the next iteration. Fixes #8203. LGTM=r R=r CC=golang-codereviews, mikioh.mikioh, p https://golang.org/cl/164140044
-
Russ Cox authored
get -u now checks that remote repo paths match the ones predicted by the import paths: if you are get -u'ing rsc.io/pdf, it has to be checked out from the right location. This is important in case the rsc.io/pdf redirect changes. In some cases, people have good reasons to use non-standard remote repos. Add -f flag to allow that. The f can stand for force or fork, as you see fit. Fixes #8850. LGTM=r R=r CC=golang-codereviews https://golang.org/cl/164120043
-
Mikio Hara authored
Just to confirm the fix, by typing the follwing: go test -run=TestLookupIPDeadline -dnsflood or go test -run=TestLookupIPDeadline -dnsflood -tags netgo Update #8602 LGTM=iant R=iant CC=golang-codereviews https://golang.org/cl/166740043
-
Rob Pike authored
still need to do internal and import comments LGTM=adg R=golang-codereviews, adg CC=golang-codereviews https://golang.org/cl/160600043
-
Rob Pike authored
LGTM=adg, rsc R=golang-codereviews, adg, bradfitz, dave, rsc CC=golang-codereviews https://golang.org/cl/164090044
-
Russ Cox authored
This leaked into the CL I submitted for Minux, because I was testing it. TBR=adg CC=golang-codereviews https://golang.org/cl/159600044
-
Russ Cox authored
NaCl creates /tmp. This lets the zip file populate it. LGTM=adg R=adg CC=golang-codereviews https://golang.org/cl/159600043
-
Shenghou Ma authored
Revived from CL 15690048. Fixes #5356. LGTM=rsc R=adg, dvyukov, rsc CC=golang-codereviews https://golang.org/cl/101400043
-
Rob Pike authored
Add a short introductory section saying what most Go programmers really need to know, which is that you shouldn't have to read this document to understand the behavior of your program. LGTM=bradfitz, adg, tracey.brendan, iant, rsc, dsymonds R=golang-codereviews, bradfitz, tracey.brendan, adg, iant, rsc, dsymonds CC=golang-codereviews https://golang.org/cl/158500043
-
- 27 Oct, 2014 8 commits
-
-
Robert Griesemer authored
Not a language change. This is simply documenting the status quo which permits builtin function names to be parenthesized in calls; e.g., both len(s) and (((len)))(s) are accepted by all compilers and go/types. Changed the grammar by merging the details of BuiltinCall with ordinary Calls. Also renamed the Call production to Arguments which more clearly identifies that part of the grammar and also matches better with its counterpart on the declaration side (Parameters). The fact that the first argument can be a type (for builtins) or cannot be a type (for regular function calls) is expressed in the prose, no need to make the grammar more complicated. Fixes #9001. LGTM=iant, r, rsc R=r, rsc, iant, ken, dave CC=golang-codereviews https://golang.org/cl/160570043
-
Andrew Gerrand authored
TBR=rsc R=golang-codereviews CC=golang-codereviews https://golang.org/cl/159590043
-
Russ Cox authored
The test just doubled a certain number of times and then gave up. On a mostly fast but occasionally slow machine this may never make the test run long enough to see the linear growth. Change test to keep doubling until the first round takes at least a full second, to reduce the effect of occasional scheduling or other jitter. The failure we saw had a time for the first round of around 100ms. Note that this test still passes once it sees a linear effect, even with a very small total time. The timeout here only applies to how long the execution must be to support a reported failure. LGTM=khr R=khr CC=golang-codereviews, rlh https://golang.org/cl/164070043
-
Russ Cox authored
Shorter and easier to read form for a common character. LGTM=bradfitz R=adg, bradfitz CC=golang-codereviews, zimmski https://golang.org/cl/162340043
-
Rob Pike authored
Move the release notes into an HTML file. Start writing the text. LGTM=rsc R=golang-codereviews, bradfitz, kamil.kisiel, tracey.brendan, rsc CC=golang-codereviews https://golang.org/cl/161350043
-
Austin Clements authored
The ftab ends with a half functab record consisting only of the 'entry' field followed by a uint32 giving the offset of the next table. Previously, symtabinit assumed it could read this uint32 as a uintptr. Since this is unsafe on big endian, explicitly read the offset as a uint32. LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/157660043
-
Ian Lance Taylor authored
Before this CL, if the system resolver does a very slow DNS lookup for a particular host, all subsequent requests for that host will hang waiting for that lookup to complete. That is more or less expected when Dial is called with no deadline. When Dial has a deadline, though, we can accumulate a large number of goroutines waiting for that slow DNS lookup. Try to avoid this problem by restarting the DNS lookup when it is redone after a deadline is passed. This CL also avoids creating an extra goroutine purely to handle the deadline. No test because we would have to simulate a slow DNS lookup followed by a fast DNS lookup. Fixes #8602. LGTM=bradfitz R=bradfitz, mikioh.mikioh CC=golang-codereviews, r, rsc https://golang.org/cl/154610044
-
Emil Hessman authored
ARPHELPLINK yields 404; update the URL. While here, also prefix the ARPREADME and ARPURLINFOABOUT URL's with the HTTP scheme to make 'em clickable links in the Add or Remove Programs listing. LGTM=adg R=golang-codereviews CC=adg, golang-codereviews https://golang.org/cl/154580045
-
- 26 Oct, 2014 1 commit
-
-
Rob Pike authored
Wrong article, one stylistic point that bothers someone (but not me). LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/156680043
-
- 25 Oct, 2014 1 commit
-
-
Peter Collingbourne authored
LGTM=iant R=iant, minux CC=golang-codereviews, golang-dev https://golang.org/cl/157460043
-
- 24 Oct, 2014 7 commits
-
-
Gustavo Niemeyer authored
Complements the logic introduced in CL 147170043. LGTM=rsc R=rsc, gustavo CC=golang-codereviews https://golang.org/cl/147240043
-
Rob Pike authored
CC=golang-codereviews https://golang.org/cl/164770043
-
Rob Pike authored
The compatibility guideline needs to be clear about this even though it means adding a clause that was not there from the beginning. It has always been understood, so this isn't really a change in policy, just in its expression. LGTM=bradfitz, gri, rsc R=golang-codereviews, bradfitz, gri, rsc CC=golang-codereviews https://golang.org/cl/162060043
-
Russ Cox authored
We force runtime.GC before WriteHeapProfile with -test.heapprofile. Make it possible to do the same with the HTTP interface. Some servers only run a GC every few minutes. On such servers, the heap profile will be a few minutes stale, which may be too old to be useful. Requested by private mail. LGTM=dvyukov R=dvyukov CC=golang-codereviews https://golang.org/cl/161990043
-
Russ Cox authored
CL 157910047 introduced code to turn a node representing a zeroed composite literal into N, the nil Node* pointer (which represents any zero, not the Go literal nil). That's great for assignments like x = T{}, but it doesn't work when T{} is used in a value context like T{}.v or x == T{}. Fix those. Should have no effect on performance; confirmed. The deltas below are noise (compare ns/op): benchmark old ns/op new ns/op delta BenchmarkBinaryTree17 2902919192 2915228424 +0.42% BenchmarkFannkuch11 2597417605 2630363685 +1.27% BenchmarkFmtFprintfEmpty 73.7 74.8 +1.49% BenchmarkFmtFprintfString 196 199 +1.53% BenchmarkFmtFprintfInt 213 217 +1.88% BenchmarkFmtFprintfIntInt 336 356 +5.95% BenchmarkFmtFprintfPrefixedInt 289 294 +1.73% BenchmarkFmtFprintfFloat 415 416 +0.24% BenchmarkFmtManyArgs 1281 1271 -0.78% BenchmarkGobDecode 10271734 10307978 +0.35% BenchmarkGobEncode 8985021 9079442 +1.05% BenchmarkGzip 410233227 412266944 +0.50% BenchmarkGunzip 102114554 103272443 +1.13% BenchmarkHTTPClientServer 45297 44993 -0.67% BenchmarkJSONEncode 19499741 19498489 -0.01% BenchmarkJSONDecode 76436733 74247497 -2.86% BenchmarkMandelbrot200 4273814 4307292 +0.78% BenchmarkGoParse 4024594 4028937 +0.11% BenchmarkRegexpMatchEasy0_32 131 135 +3.05% BenchmarkRegexpMatchEasy0_1K 328 333 +1.52% BenchmarkRegexpMatchEasy1_32 115 117 +1.74% BenchmarkRegexpMatchEasy1_1K 931 948 +1.83% BenchmarkRegexpMatchMedium_32 216 217 +0.46% BenchmarkRegexpMatchMedium_1K 72669 72857 +0.26% BenchmarkRegexpMatchHard_32 3818 3809 -0.24% BenchmarkRegexpMatchHard_1K 121398 121945 +0.45% BenchmarkRevcomp 613996550 615145436 +0.19% BenchmarkTemplate 93678525 93267391 -0.44% BenchmarkTimeParse 414 411 -0.72% BenchmarkTimeFormat 396 399 +0.76% Fixes #8947. LGTM=r R=r, dave CC=golang-codereviews https://golang.org/cl/162130043
-
Russ Cox authored
CC=golang-codereviews https://golang.org/cl/162140043
-
Russ Cox authored
In theory both of these lines encode the same three fields: a,,c a,"",c However, Postgres defines that when importing CSV, the unquoted version is treated as NULL (missing), while the quoted version is treated as a string value (empty string). If the middle field is supposed to be an integer value, the first line can be imported (NULL is okay), but the second line cannot (empty string is not). Postgres's import command (COPY FROM) has an option to force the unquoted empty to be interpreted as a string but it does not have an option to force the quoted empty to be interpreted as a NULL. From http://www.postgresql.org/docs/9.0/static/sql-copy.html: The CSV format has no standard way to distinguish a NULL value from an empty string. PostgreSQL's COPY handles this by quoting. A NULL is output as the NULL parameter string and is not quoted, while a non-NULL value matching the NULL parameter string is quoted. For example, with the default settings, a NULL is written as an unquoted empty string, while an empty string data value is written with double quotes (""). Reading values follows similar rules. You can use FORCE_NOT_NULL to prevent NULL input comparisons for specific columns. Therefore printing the unquoted empty is more flexible for imports into Postgres than printing the quoted empty. In addition to making the output more useful with Postgres, not quoting empty strings makes the output smaller and easier to read. It also matches the behavior of Microsoft Excel and Google Drive. Since we are here and making concessions for Postgres, handle this case too (again quoting the Postgres docs): Because backslash is not a special character in the CSV format, \., the end-of-data marker, could also appear as a data value. To avoid any misinterpretation, a \. data value appearing as a lone entry on a line is automatically quoted on output, and on input, if quoted, is not interpreted as the end-of-data marker. If you are loading a file created by another application that has a single unquoted column and might have a value of \., you might need to quote that value in the input file. Fixes #7586. LGTM=bradfitz R=bradfitz CC=golang-codereviews https://golang.org/cl/164760043
-
- 23 Oct, 2014 2 commits
-
-
Robert Griesemer authored
Per suggestion from rsc as a result of the dicussion of (abandoned) CL 153110044. Fixes #7192. LGTM=r, rsc, iant R=r, rsc, iant, ken CC=golang-codereviews https://golang.org/cl/163050043
-
Ian Lance Taylor authored
LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/163760043
-
- 22 Oct, 2014 2 commits
-
-
Dmitriy Vyukov authored
Pool memory was only being released during the first GC after the first Put. Put assumes that p.local != nil means p is on the allPools list. poolCleanup (called during each GC) removed each pool from allPools but did not clear p.local, so each pool was cleared by exactly one GC and then never cleared again. This bug was introduced late in the Go 1.3 release cycle. Fixes #8979. LGTM=rsc R=golang-codereviews, bradfitz, r, rsc CC=golang-codereviews, khr https://golang.org/cl/162980043
-
Ian Lance Taylor authored
test16 used to fail with gccgo. The withoutRecoverRecursive test would have failed in some possible implementations. LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/151630043
-