aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-08-24[release-branch.go1.10] go1.10.4go1.10.4Andrew Bonventre
Change-Id: Idef60b8ac0411bacc09e98b0a79a7df7279d76bc Reviewed-on: https://go-review.googlesource.com/131337 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-08-24[release-branch.go1.10] doc: document Go 1.10.4Andrew Bonventre
Change-Id: I7383e7d37a71defcad79fc662c4b4d1ca02189d1 Reviewed-on: https://go-review.googlesource.com/131336 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> (cherry picked from commit 74ac46d5a4f33f5da9c5a16b070ec2331ec4e7c9) Reviewed-on: https://go-review.googlesource.com/131355 Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-08-24[release-branch.go1.10] cmd/compile: fix zero extend after float->int conversionKeith Randall
Don't do direct loads from argument slots if the sizes don't match. This prevents us from loading from a float32 using a uint64 load during expressions like uint64(math.float32Bits(f)) where f is a float32 arg. Fixes #25335 Change-Id: I3887d76f78c844ba546243e7721d811c3d4a9700 Reviewed-on: https://go-review.googlesource.com/112637 Run-TryBot: Keith Randall <khr@golang.org> Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-on: https://go-review.googlesource.com/131276 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-08-22[release-branch.go1.10] net/http: lock the read-only mutex in shouldRedirectDamien Mathieu
Since that method uses `mux.m`, we need to lock the mutex to avoid data races. Fixes #27129 Change-Id: I998448a6e482b5d6a1b24f3354bb824906e23172 Reviewed-on: https://go-review.googlesource.com/95775 Reviewed-by: Andrew Bonventre <andybons@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-08-21[release-branch.go1.10] cmd/link: treat cgo exported symbols as C symbolsIan Lance Taylor
Fixes #25827 Change-Id: I6736c3ac061ca32aac2eb68b01ba53a179d68cf4 Reviewed-on: https://go-review.googlesource.com/118076 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org> (cherry picked from commit f861f66d1db9f1abcdf91fc54d0d84bd3f9e9310) Reviewed-on: https://go-review.googlesource.com/126455 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-08-09[release-branch.go1.10] cmd/compile: reset branch prediction when deleting a ↵Keith Randall
branch When we go from a branch block to a plain block, reset the branch prediction bit. Downstream passes asssume that if the branch prediction is set, then the block has 2 successors. Fixes #23504 Fixes #26851 Change-Id: I2898ec002228b2e34fe80ce420c6939201c0a5aa Reviewed-on: https://go-review.googlesource.com/88955 Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com> (cherry picked from commit 4313d7767d830e863e8f8b53a2b48ca8d0bf0a79) Reviewed-on: https://go-review.googlesource.com/128855 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
2018-08-08[release-branch.go1.10] cmd/cgo: don't give inconsistent typedef error for ↵Ian Lance Taylor
cgo-defined types The cgo tool predefines some C types such as C.uint. Don't give an error if the type that cgo defines does not match the type in a header file. Fixes #26743 Change-Id: I9ed3b4c482b558d8ffa8bf61eb3209415b7a9e3c Reviewed-on: https://go-review.googlesource.com/127356 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Keith Randall <khr@golang.org> (cherry picked from commit c29370c98ecfc7aa59f32c7a7897e50a0f6eb86b) Reviewed-on: https://go-review.googlesource.com/128396 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-08-08[release-branch.go1.10] cmd/cgo: don't resolve typedefs in -godefs modeIan Lance Taylor
In -godefs mode any typedefs that appear in struct fields and the like will presumably be defined in the input file. If we resolve to the base type, those cross-references will not work. So for -godefs mode, keep the Go 1.10 behavior and don't resolve the typedefs in a loop. Fixes #26644 Change-Id: I48cf72d9eb5016353c43074e6aff6495af326f35 Reviewed-on: https://go-review.googlesource.com/125995 Reviewed-by: Keith Randall <khr@golang.org> (cherry picked from commit ead59f4bf368f13bbabea3f8a59f9f29ccdd3900) Reviewed-on: https://go-review.googlesource.com/128395 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-08-08[release-branch.go1.10] cmd/cgo: stop expanding typedefs once we reach ↵Keith Randall
__builtin types Expanding __builtin types (__builtin_va_list, particularly) leads to problems because they are expanded by the compiler itself - the expansions are not generated by anything in a .h file. The types a __builtin type expand to are thus very confusing to cgo. See CL 126275. Fixes #25036. Change-Id: I66eb6a4f27f652f1b934ba702f580f6daa62a566 Reviewed-on: https://go-review.googlesource.com/127156 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-on: https://go-review.googlesource.com/128096
2018-08-08[release-branch.go1.10] cmd/cgo: make sure we FinishType everythingKeith Randall
Ensure that we call FinishType on all the types added to the ptrs map. We only add a key to ptrKeys once. Once we FinishType for that key, we'll never look at that key again. But we can add a new type under that key later, and we'll never finish it. Make sure we add the key to the ptrKeys list every time we make the list of types for that key non-empty. This makes sure we FinishType each pointer type exactly once. Update #25036 Change-Id: Iad86150d516fcfac167591daf5a26c38bec7d143 Reviewed-on: https://go-review.googlesource.com/126275 Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-on: https://go-review.googlesource.com/128095
2018-08-08[release-branch.go1.10] misc/cgo: fix darwin test, againKeith Randall
TARGET_OS_OSX is the right macro, but it also was only introduced in 1.12. For 1.11 and earlier a reasonable substitution is TARGET_OS_IPHONE == 0. Update #25036 Change-Id: I5f43c463d14fada9ed1d83cc684c7ea05d94c5f3 Reviewed-on: https://go-review.googlesource.com/124075 Run-TryBot: Keith Randall <khr@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-on: https://go-review.googlesource.com/124218
2018-08-08[release-branch.go1.10] misc/cgo: fix test on iOSKeith Randall
The test in CL 123715 doesn't work on iOS, it needs to use a different version scheme to determine whether SecKeyAlgorithm and friends exist. Restrict the old version test to OSX only. The same problem occurs on iOS: the functions tested don't exist before iOS 10. But we don't have builders below iOS 10, so it isn't a big issue. If we ever get older builders, or someone wants to run all.bash on an old iOS, they'll need to figure out the right incantation. Update #25036 Change-Id: Ia3ace86b00486dc172ed00c0c6d668a95565bff7 Reviewed-on: https://go-review.googlesource.com/123959 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-on: https://go-review.googlesource.com/124217 Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-08-08[release-branch.go1.10] misc/cgo/test: fix issue 24161 test for 1.11 and earlierKeith Randall
The test uses functions from C that were introduced in OSX 1.12. Include stubs for those functions when compiling for 1.11 and earlier. This test really a compile-time test, it doesn't matter much what the executed code actually does. Use a nasty #define hack to work around the fact that cgo doesn't support static global variables. Update #25036 Change-Id: Icf6f7bc9b6b36cacc81d5d0e033a2ebaff7e0298 Reviewed-on: https://go-review.googlesource.com/123715 Run-TryBot: Keith Randall <khr@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-on: https://go-review.googlesource.com/124216
2018-08-08[release-branch.go1.10] cmd/cgo: fix cgo bad typedefsKeith Randall
Two fixes: 1) Typedefs of the bad typedefs should also not be rewritten to the underlying type. They shouldn't just be uintptr, though, they should retain the C naming structure. For example, in C: typedef const __CFString * CFStringRef; typedef CFStringRef SecKeyAlgorithm; we want the Go: type _Ctype_CFStringRef uintptr type _Ctype_SecKeyAlgorithm = _Ctype_CFStringRef 2) We need more types than just function arguments/return values. At least we need types of global variables, so when we see a reference to: extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962SHA1; we know that we need to investigate the type SecKeyAlgorithm. Might as well just find every typedef and check the badness of all of them. This requires looping until a fixed point of known types is reached. Usually it takes just 2 iterations, sometimes 3. Update #25036 Change-Id: I32ca7e48eb4d4133c6242e91d1879636f5224ea9 Reviewed-on: https://go-review.googlesource.com/123177 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-on: https://go-review.googlesource.com/124215
2018-08-08[release-branch.go1.10] cmd/cgo: check function argument/return types for ↵Keith Randall
bad C pointer types We need to determine whether arguments to and return values from C functions are "bad" typedef'd pointer types which need to be uintptr on the Go side. The type of those arguments are not specified explicitly. As a result, we never look through the C declarations for the GetTypeID functions associated with that type, and never realize that they are bad. However, in another function in the same package there might be an explicit reference. Then we end up with the declaration being uintptr in one file and *struct{...} in another file. Badness ensues. Fix this by doing a 2-pass algorithm. In the first pass, we run as normal, but record all the argument and result types we see. In the second pass, we include those argument types also when reading the C types. Update #25036 Change-Id: I8d727e73a2fbc88cb9d9899f8719ae405f59f753 Reviewed-on: https://go-review.googlesource.com/122575 Run-TryBot: Keith Randall <khr@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> (cherry picked from commit 20803e0f52809fa6088285c1c87246642df2b62d) Reviewed-on: https://go-review.googlesource.com/122818
2018-08-07[release-branch.go1.10] cmd/cgo: don't report inconsistency error for ↵Ian Lance Taylor
incomplete typedef In CLs 122575 and 123177 the cgo tool started explicitly looking up typedefs. When there are two Go files using import "C", and the first one has an incomplete typedef and the second one has a complete version of the same typedef, then we will now record a version of the first typedef which will not match the recorded version of the second typedef, producing an "inconsistent definitions" error. Fix this by silently merging incomplete typedefs with complete ones. Fixes #26430 Change-Id: I9e629228783b866dd29b5c3a31acd48f6e410a2d Reviewed-on: https://go-review.googlesource.com/124575 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org> (cherry picked from commit a371bc2dfdf1fe4166c83be1177fbecb03d8da53) Reviewed-on: https://go-review.googlesource.com/128155
2018-07-16[release-branch.go1.10] strings: do much less redundant testing in ↵Ian Lance Taylor
TestCompareStrings On the OpenBSD builder this reduces the test time from 213 seconds to 60 seconds, without loss of testing. Not sure why the test is so much slower on OpenBSD, so not closing the issues. Updates #26155 Updates #26174 Change-Id: I13b58bbe3b209e591c308765077d2342943a3d2a Reviewed-on: https://go-review.googlesource.com/121820 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ralph Corderoy <ralph@inputplus.co.uk> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> (cherry picked from commit 869884daead156d0e5a4093d91968ed172d4d2d0) Reviewed-on: https://go-review.googlesource.com/124115 Reviewed-by: Bill O'Farrell <billotosyr@gmail.com>
2018-07-16[release-branch.go1.10] bytes, strings: fix comparison of long byte slices ↵bill_ofarrell
on s390x The existing implementation of bytes.Compare on s390x doesn't work properly for slices longer than 256 elements. This change fixes that. Added tests for long strings and slices of bytes. Fixes #26117 Change-Id: If6d8b68ee6dbcf99a24f867a1d3438b1f208954f Reviewed-on: https://go-review.googlesource.com/121495 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-on: https://go-review.googlesource.com/124016 Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-06-26[release-branch.go1.10] mime/multipart: restore 1.9 handling of ↵Ian Lance Taylor
missing/empty form-data file name Revert the code change of CL 70931, but keep the test, appropriately modified for the code changes. Also add a new test. This restores the 1.9 handling of form-data entries with missing or empty file names. Changing the handling of this simply confused existing programs for no useful benefit. Go back to the old behavior. Updates #19183 Fixes #24041 Change-Id: Ie7a0309a061218ceda3bbc2a7da85e6fb3dd016d Reviewed-on: https://go-review.googlesource.com/121075 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-06-15[release-branch.go1.10] ld/macho: add all missing load commandsMisty De Meo
The ld/macho code currently understands a subset of the mach-o load commands. I've encountered one of these in the wild in a Go-produced binary, which tripped up the Go linker because its switch statement expects its list of load commands to be exhaustive; the rest I've added for the sake of completion. The ruby-macho library is a good non-Darwin header resource for these: https://github.com/homebrew/ruby-macho Fixes #25912 Change-Id: Ib54c065d27e87d8726a9870df05a2bae24828b98 GitHub-Last-Rev: 655e3f488a4c1a89896a40edb0e1f715a5d3f734 GitHub-Pull-Request: golang/go#25906 Reviewed-on: https://go-review.googlesource.com/119115 Reviewed-by: Ian Lance Taylor <iant@golang.org> (cherry picked from commit 1a92cdbfc10e0c66f2e015264a39159c055a5c15) Reviewed-on: https://go-review.googlesource.com/119215 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-06-06[release-branch.go1.10] go1.10.3go1.10.3Filippo Valsorda
Change-Id: If2abf35c922737d48ec72881428dc3353b016f7f Reviewed-on: https://go-review.googlesource.com/116763 Run-TryBot: Filippo Valsorda <filippo@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Filippo Valsorda <filippo@golang.org>
2018-06-06[release-branch.go1.10] doc: document Go 1.10.3Filippo Valsorda
Change-Id: Ifc774bb9267baa773e91c617204329d3e04bd4b7 Reviewed-on: https://go-review.googlesource.com/116363 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Russ Cox <rsc@golang.org> (cherry picked from commit b0951aff8f6a004fc2e73fdb98350125daea6c05) Reviewed-on: https://go-review.googlesource.com/116477 Reviewed-by: Filippo Valsorda <filippo@golang.org>
2018-06-06[release-branch.go1.10] doc: document Go 1.9.7Filippo Valsorda
Change-Id: I10dededb41162a99dbc42792a9d314c6dabddcca Reviewed-on: https://go-review.googlesource.com/116362 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Russ Cox <rsc@golang.org> (cherry picked from commit bbf4a3024b1001ef2f01a8d12b5d7469915e4a8d) Reviewed-on: https://go-review.googlesource.com/116476 Reviewed-by: Filippo Valsorda <filippo@golang.org>
2018-06-04[release-branch.go1.10] cmd/go: fix 'go get' compatibility for direct ↵Russ Cox
download of vgo-aware module CL 109340 added “minimal module-awareness for legacy operation.” One part of that is reinterpreting imports inside code trees with go.mod files as using semantic import versioning, and converting them back to legacy import paths by stripping the major version element (for example, interpreting import "x.com/foo/v2/bar" as import "x.com/foo/bar"). This rewrite was not being applied during "go get", with the effect that once you had the target code downloaded already, everything was fine, but it didn't download and build successfully the first time. Fixes #25687. Cherry-pick fixes #25690. Change-Id: I3e122efdc8fd9a0a4e66f5aa3e6a99f90c7df779 Reviewed-on: https://go-review.googlesource.com/115797 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com> Reviewed-on: https://go-review.googlesource.com/116176
2018-05-31[release-branch.go1.10] cmd/go: accept more safe CFLAGS/LDFLAGSIan Lance Taylor
Fixes #23749 Fixes #24703 Fixes #24858 Change-Id: Ib32d8efee294004c70fdd602087df2da0867f099 Reviewed-on: https://go-review.googlesource.com/115415 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> (cherry picked from commit 886d5601a63bef0271e705cfa6b6ac6f5134ee60) Reviewed-on: https://go-review.googlesource.com/115435 Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-05-30[release-branch.go1.10] cmd/go: add minimal module-awareness for legacy ↵Russ Cox
operation We want authors to be able to publish code that works with both the current standard go command and the planned new go command support for modules. If authors have tagged their code v2 or later, semantic import versioning means the import paths must include a v2 path element after the path prefix naming the module. One option for making this convention compatible with original go get is to move code into a v2 subdirectory of the root. That makes sense for some authors, but many authors would prefer not to move all the code into a v2 subdirectory for a transition and then move it back up once we everyone has a module-aware go command. Instead, this CL teaches the old (non-module-aware) go command a tiny amount about modules and their import paths, to expand the options for authors who want to publish compatible packages. If an author has a v2 of a package, say my/thing/v2/sub/pkg, in the my/thing repo's sub/pkg subdirectory (no v2 in the file system path), then old go get continues to import that package as my/thing/sub/pkg. But when go get is processing code in any module (code in a tree with a go.mod file) and encounters a path like my/thing/v2/sub/pkg, it will check to see if my/thing/go.mod says "module my/thing/v2". If so, the go command will read the import my/thing/v2/sub/pkg as if it said my/thing/sub/pkg, which is the correct "old" import path for the package in question. This CL will be back-ported to Go 1.10 and Go 1.9 as well. Once users have updated to the latest Go point releases containing this new logic, authors will be able to update to using modules within their own repos, including using semantic import paths with vN path elements, and old go get will still be able to consume those repositories. This CL also makes "go get" ignore meta go-import lines using the new "mod" VCS type. This allows a package to specify both a "mod" type and a "git" type, to present more efficient module access to module-aware go but still present a Git repo to the old "go get". Fixes #24751. Fixes #25069. Backport fixes #25139. Change-Id: I378955613a0d63834d4f50f121f4db7e4d87dc0a Reviewed-on: https://go-review.googlesource.com/114500 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
2018-05-30[release-branch.go1.10] cmd/go: remove import path debugging hooksRuss Cox
These are no longer needed. Change-Id: Ie42a84f2bd24d2f59324bb66551c46e6af60c302 Reviewed-on: https://go-review.googlesource.com/109339 Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com> Reviewed-on: https://go-review.googlesource.com/114499 TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-05-26[release-branch.go1.10] strings: fix encoding of \u0080 in mapMartin Möhrmann
Fix encoding of PAD (U+0080) which has the same value as utf8.RuneSelf being incorrectly encoded as \x80 in strings.Map due to using <= instead of a < comparison operator to check one byte encodings for utf8. Fixes golang/go#25479 Change-Id: Ib6c7d1f425a7ba81e431b6d64009e713d94ea3bc Reviewed-on: https://go-review.googlesource.com/111286 Run-TryBot: Martin Möhrmann <moehrmann@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> (cherry picked from commit 8c62fc0ca3c96ecbd3a6e81546aa8c53e32ff500) Reviewed-on: https://go-review.googlesource.com/114635 Run-TryBot: Andrew Bonventre <andybons@golang.org>
2018-05-26[release-branch.go1.10] doc: sync with masterFilippo Valsorda
A number of changes were applied to documentation in master, including a wide rewrite of the contribution guide. Backport them all to get them deployed on golang.org. $ git ch master -- doc $ git show-ref master 88756931d0a6e23aeaf61caa6a7363ac04be2063 refs/heads/master Change-Id: Ib45ff191f3b60723aa4421113992289c37d144aa Reviewed-on: https://go-review.googlesource.com/114503 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Andrew Bonventre <andybons@golang.org> Run-TryBot: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-05-24[release-branch.go1.10] crypto/x509: check EKUs like 1.9.Adam Langley
This change brings back the EKU checking from 1.9. In 1.10, we checked EKU nesting independent of the requested EKUs so that, after verifying a certifciate, one could inspect the EKUs in the leaf and trust them. That, however, was too optimistic. I had misunderstood that the PKI was /currently/ clean enough to require that, rather than it being desirable. Go generally does not push the envelope on these sorts of things and lets the browsers clear the path first. Fixes #25258 Change-Id: I18c070478e3bbb6468800ae461c207af9e954949 Reviewed-on: https://go-review.googlesource.com/113475 Reviewed-by: Filippo Valsorda <filippo@golang.org> (cherry picked from commit 180e0f8a1b149bd1d15df29b6527748266cacad9) Reviewed-on: https://go-review.googlesource.com/114035 Run-TryBot: Filippo Valsorda <filippo@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-05-23[release-branch.go1.10] doc: update Code of ConductAndrew Bonventre
Change-Id: I82c03dd026bb797a49b7361389373924acf6366c Reviewed-on: https://go-review.googlesource.com/114085 Reviewed-by: Russ Cox <rsc@golang.org> (cherry picked from commit 571d78267ff48f3a1220bfe7d342aa635008e35f) Reviewed-on: https://go-review.googlesource.com/114275 Run-TryBot: Andrew Bonventre <andybons@golang.org>
2018-05-08[release-branch.go1.10] misc/cgo/testcshared: use file descriptor 30 for ↵Ian Lance Taylor
TestUnexportedSymbols Backport of CL 108537 to 1.10 release branch. We were using file descriptor 100, which requires the Linux kernel to grow the fdtable size. That step may sometimes require a long time, causing the test to fail. Switch to file descriptor 30, which should not require growing the fdtable. Updates #23784 Fixes #25277 Change-Id: I9d25986f3b59bdeb04aa52407b24aa94712aedff Reviewed-on: https://go-review.googlesource.com/111995 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-07[release-branch.go1.10] crypto/tls: copy and use adjusted ↵Alex Brainman
syscall.CertChainPolicyPara As discussed in issue #21376, it is unsafe to have syscall.CertChainPolicyPara.ExtraPolicyPara uintptr - it has to be a pointer type. So copy syscall.CertChainPolicyPara into crypto/tls package, make ExtraPolicyPara unsafe.Pointer, and use new struct instead of syscall.CertChainPolicyPara. Fixes #25033 Change-Id: If914af056cbbb0c4d93ffaa915b3d2cb5ecad0cd Reviewed-on: https://go-review.googlesource.com/111715 Reviewed-by: Austin Clements <austin@google.com> Run-TryBot: Austin Clements <austin@google.com>
2018-04-30[release-branch.go1.10] go1.10.2go1.10.2Andrew Bonventre
Change-Id: I3d88ab55277e4386177cda06e2eb5a9b0e26cf93 Reviewed-on: https://go-review.googlesource.com/110338 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-04-30[release-branch.go1.10] doc: document Go 1.10.2Andrew Bonventre
Change-Id: I84334dfd02ad9a27b3fb6d46a6b1c015a3f03511 Reviewed-on: https://go-review.googlesource.com/110335 Reviewed-by: Filippo Valsorda <filippo@golang.org> (cherry picked from commit 4bced5e9461429ae90245b0048c6fa5ff39a3947) Reviewed-on: https://go-review.googlesource.com/110377 Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-04-30[release-branch.go1.10] doc: document Go 1.9.6Andrew Bonventre
Change-Id: I9699b22d3a308cda685aa684b32dcde99333df46 Reviewed-on: https://go-review.googlesource.com/110315 Reviewed-by: Filippo Valsorda <filippo@golang.org> (cherry picked from commit 587416c1617c4d5c970ca382dead63f9576c0de5) Reviewed-on: https://go-review.googlesource.com/110376 Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-04-28[release-branch.go1.10] cmd/internal/obj/mips: load/store even float ↵James Cowgill
registers first There is a bug in Octeon III processors where storing an odd floating point register after it has recently been written to by a double floating point operation will store the old value from before the double operation (there are some extra details - the operation and store must be a certain number of cycles apart). However, this bug does not occur if the even register is stored first. Currently the bug only happens on big endian because go always loads the even register first on little endian. Workaround the bug by always loading / storing the even floating point register first. Since this is just an instruction reordering, it should have no performance penalty. This follows other compilers like GCC which will always store the even register first (although you do have to set the ISA level to MIPS I to prevent it from using SDC1). Fixes golang/go#24995 Change-Id: I5e73daa4d724ca1df7bf5228aab19f53f26a4976 Reviewed-on: https://go-review.googlesource.com/97735 Reviewed-by: Keith Randall <khr@golang.org> (cherry picked from commit 423111081b87c6c4e61c4d94c94bfdf1853fa01f) Reviewed-on: https://go-review.googlesource.com/110078 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-04-27[release-branch.go1.10] cmd/internal/test2json: support subtests containing ↵Daniel Martí
colons The "updates" lines, such as RUN, do not contain a colon. However, test2json looked for one anyway, meaning that it would be thrown off if it encountered a line like: === RUN TestWithColons/[::1] In that case, it must not use the first colon it encounters to separate the action from the test name. Fixes golang/go#25027 Change-Id: I82eff23e24b83dae183c0cf9f85fc5f409f51c25 Reviewed-on: https://go-review.googlesource.com/98445 Run-TryBot: Daniel Martí <mvdan@mvdan.cc> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> (cherry picked from commit 0c5cfec84424bb453ccd270f4b5c439f21ccf617) Reviewed-on: https://go-review.googlesource.com/110075 Run-TryBot: Andrew Bonventre <andybons@golang.org>
2018-04-27[release-branch.go1.10] cmd/compile: fix evaluation of "" < sJosh Bleecher Snyder
Fixes #24935 Change-Id: Ifa79ab3dfe69297eeef85f7193cd5f85e5982bc5 Reviewed-on: https://go-review.googlesource.com/106655 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com> Reviewed-on: https://go-review.googlesource.com/108944 Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Andrew Bonventre <andybons@golang.org>
2018-04-27[release-branch.go1.10] cmd/go: fix go list .Stale computationRuss Cox
If X depends on Y and X was installed but Y is only present in the cache (as happens when you "go install X") then we should report X as up-to-date, not as stale. This applies whether X is a package or a main binary. Fixes golang/go#25026 Fixes golang/go#25032 Change-Id: I26a0b375b1f7f7ac909cc0db68e92f4e04529208 Reviewed-on: https://go-review.googlesource.com/107957 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com> (cherry picked from commit 9e0e6981fc536c9e51ce24c425141a3d09b39e3a) Reviewed-on: https://go-review.googlesource.com/110076 Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-04-27[release-branch.go1.10] cmd/link: do not pass -no-pie to host linker when ↵Michael Hudson-Doyle
-linkshared is passed As the comment above the code I'm changing says, when building with -buildmode=exe, the default compiler flags produce code incompatible with PIE. But when -linkshared is passed, the default compiler flags are not used so this does not apply. And now I've found a system (linux/arm64 with glibc 2.27) where this combination of flags causes a problem, albeit for reasons I don't really understand, so stop passing -no-pie when -linkshared is passed. Fixes golang/go#24873 Change-Id: I412ec7941dc0cb89e6d1b171fc29288aadcb9f20 Reviewed-on: https://go-review.googlesource.com/104815 Run-TryBot: Michael Hudson-Doyle <michael.hudson@canonical.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> (cherry picked from commit 2d26a65f8f1a6fcb0948803589061d99b94fa993) Reviewed-on: https://go-review.googlesource.com/110035 Run-TryBot: Andrew Bonventre <andybons@golang.org>
2018-03-29[release-branch.go1.10] cmd/go: skip TestVetWithOnlyCgoFiles when cgo is ↵David du Colombier
disabled CL 99175 added TestVetWithOnlyCgoFiles. However, this test is failing on platforms where cgo is disabled, because no file can be built. This change fixes TestVetWithOnlyCgoFiles by skipping this test when cgo is disabled. Fixes #24304. Change-Id: Ibb38fcd3e0ed1a791782145d3f2866f12117c6fe Reviewed-on: https://go-review.googlesource.com/99275 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> (cherry picked from commit b1335037fad4c81ce296f652372aa631a29dcb48) Reviewed-on: https://go-review.googlesource.com/103223 Reviewed-by: David du Colombier <0intro@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] go1.10.1go1.10.1Andrew Bonventre
Change-Id: I0636f60e705f8182d6fba4ce6199c67f94c04e36 Reviewed-on: https://go-review.googlesource.com/103168 Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] runtime: identify special functions by flag instead ↵Keith Randall
of address When there are plugins, there may not be a unique copy of runtime functions like goexit, mcall, etc. So identifying them by entry address is problematic. Instead, keep track of each special function using a field in the symbol table. That way, multiple copies of the same runtime function will be treated identically. Fixes #24351 Fixes #23133 Change-Id: Iea3232df8a6af68509769d9ca618f530cc0f84fd Reviewed-on: https://go-review.googlesource.com/100739 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-on: https://go-review.googlesource.com/102793 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
2018-03-29[release-branch.go1.10] doc: update 1.9.5 release notes to include ↵Andrew Bonventre
net/http/pprof Change-Id: I7c0716711a2cadd347fdf242c792b109539f7355 Reviewed-on: https://go-review.googlesource.com/103163 Reviewed-by: Andrew Bonventre <andybons@golang.org> Reviewed-on: https://go-review.googlesource.com/103166 Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] doc: update release notes for Go 1.9.5Andrew Bonventre
Change-Id: Idf88d289bac9603d852a9d19eb4b764f8589f8d9 Reviewed-on: https://go-review.googlesource.com/103159 Reviewed-by: Andrew Bonventre <andybons@golang.org> Reviewed-on: https://go-review.googlesource.com/103162 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] doc: document Go 1.10.1Andrew Bonventre
Change-Id: Ibba5d4fd8124db9b1e4e50b8f37366f8dd23f47e Reviewed-on: https://go-review.googlesource.com/103217 Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-on: https://go-review.googlesource.com/103222 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] doc: document Go 1.9.5Andrew Bonventre
Change-Id: I8f12b188d2e13555e1d7634b9cc0319fc737cb1d Reviewed-on: https://go-review.googlesource.com/103216 Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-on: https://go-review.googlesource.com/103221 Reviewed-by: Andrew Bonventre <andybons@golang.org> Run-TryBot: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] net/http/pprof: harden handler responsesAndrew Bonventre
A very small number of old browsers consider content as HTML even when it is explicitly stated in the Content-Type header that it is not. If content served is based on user-supplied input, then an XSS is possible. Introduce three mitigations: + Don't reflect user input in error strings + Set a Content-Disposition header when requesting a resource that should never be displayed in a browser window + Set X-Content-Type-Options: nosniff on all responses Change-Id: I81c9d6736e0439ebd1db99cd7fb701cc56d24805 Reviewed-on: https://go-review.googlesource.com/102318 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Filippo Valsorda <filippo@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-on: https://go-review.googlesource.com/103218 Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] cmd/go: add more C compiler/linker options to whitelistIan Lance Taylor
Fixes #23937 Change-Id: Ie63d91355d1a724d0012d99d457d939deeeb8d3e Reviewed-on: https://go-review.googlesource.com/102818 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Andrew Bonventre <andybons@golang.org> Reviewed-on: https://go-review.googlesource.com/103015 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>