aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-06-23cmd/compile: scanning closures body when visiting wrapper functionCuong Manh Le
CL 410344 fixed missing method value wrapper, by visiting body of wrapper function after applying inlining pass. CL 492017 allow more inlining of functions that construct closures, which ends up making the wrapper function now inlineable, but can contain closure nodes that couldn't be inlined. These closures body may contain OMETHVALUE nodes that we never seen, thus we need to scan closures body for finding them. Fixes #60945 Change-Id: Ia1e31420bb172ff87d7321d2da2989ef23e6ebb6 Reviewed-on: https://go-review.googlesource.com/c/go/+/505255 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Than McIntosh <thanm@google.com> Reviewed-by: Matthew Dempsky <mdempsky@google.com> Run-TryBot: Cuong Manh Le <cuong.manhle.vn@gmail.com> Auto-Submit: Cuong Manh Le <cuong.manhle.vn@gmail.com>
2023-06-23log/slog: fix broken link to AnyValue in commentCuong Manh Le
Change-Id: Ida52a2bf6a415017942bf9ccd74a1ea9ed02bc46 Reviewed-on: https://go-review.googlesource.com/c/go/+/505535 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org> Auto-Submit: Cuong Manh Le <cuong.manhle.vn@gmail.com> Reviewed-by: Jonathan Amsterdam <jba@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Run-TryBot: Cuong Manh Le <cuong.manhle.vn@gmail.com>
2023-06-23log/slog: fix broken link to Record.Clone in package docsChristopher Taylor
Change-Id: If8b937fa9db89a537ad7d4ccb8c04f84d2cff3db GitHub-Last-Rev: fdd4338118e6e19a0a3673f364afcdb0b60236a4 GitHub-Pull-Request: golang/go#60938 Reviewed-on: https://go-review.googlesource.com/c/go/+/505075 TryBot-Bypass: Jonathan Amsterdam <jba@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Jonathan Amsterdam <jba@google.com>
2023-06-22cmd/go: impersonate 'go tool dist list' if 'go tool dist' is not presentBryan C. Mills
Fixes #60939. Change-Id: I6a15db558a8e80e242818cccd642899aba47e596 Reviewed-on: https://go-review.googlesource.com/c/go/+/505176 Reviewed-by: Russ Cox <rsc@golang.org> Run-TryBot: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Bryan Mills <bcmills@google.com>
2023-06-22internal/platform,cmd/dist: export the list of supported platformsBryan C. Mills
Also switch internal/platform to commit the generated code instead of regenerating it in cmd/dist. Nothing in the generated code depends on the target configuration, and committing the source file makes it more amenable to searching and indexing (particularly on https://cs.opensource.google/go/go). For #60939. Change-Id: I9133dfd5129b3c4d7457267589dfac5e7ecbef65 Reviewed-on: https://go-review.googlesource.com/c/go/+/505175 TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Bryan Mills <bcmills@google.com> Reviewed-by: Austin Clements <austin@google.com> Run-TryBot: Bryan Mills <bcmills@google.com>
2023-06-22cmd/{go,cover}: enable response file args for cmd/coverThan McIntosh
Change the cover command to accept arguments via response files, using the same mechanism employed for the compiler and the assembler. This is needed now that the cover tool accepts a list of all source files in a package, as opposed to just a single source file, and as a result can run into system-dependent command line length limits. Fixes #60785. Change-Id: I67dbc96ad9fc5c6f43d5c1e4e903e4b8589b154f Reviewed-on: https://go-review.googlesource.com/c/go/+/503735 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@google.com> Run-TryBot: Than McIntosh <thanm@google.com>
2023-06-22internal/fuzz: fix typo in commentOleksandr Redko
Change-Id: I04f0aa2730cd7d60027a36a3b81289e4972d4a9c Reviewed-on: https://go-review.googlesource.com/c/go/+/505115 Reviewed-by: Roland Shoemaker <roland@golang.org> Auto-Submit: Roland Shoemaker <roland@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Run-TryBot: Roland Shoemaker <roland@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-22crypto/x509: tolerate multiple matching chains in testVerifyRoland Shoemaker
Due to the semantics of roots, a root store may contain two valid roots that have the same subject (but different SPKIs) at the asme time. As such in testVerify it is possible that when we verify a certificate we may get two chains that has the same stringified representation. Rather than doing something fancy to include keys (which is just overly complicated), tolerate multiple matches. Fixes #60925 Change-Id: I5f51f7635801762865a536bcb20ec75f217a36ea Reviewed-on: https://go-review.googlesource.com/c/go/+/505035 Reviewed-by: Heschi Kreinick <heschi@google.com> Run-TryBot: Roland Shoemaker <roland@golang.org> Auto-Submit: Roland Shoemaker <roland@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-21net/mail: permit more characters in mail headersIan Lance Taylor
We parse mail messages using net/textproto. For #53188, we tightened up the bytes permitted by net/textproto to match RFC 7230. However, this package uses RFC 5322 which is more permissive. Restore the permisiveness we used to have, so that older code continues to work. Fixes #58862 Fixes #60332 Change-Id: I5437f5e18a756f6ca61c13c4d8ba727be73eff9a Reviewed-on: https://go-review.googlesource.com/c/go/+/504416 Run-TryBot: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Damien Neil <dneil@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com>
2023-06-21test: add test that caused a gofrontend crashIan Lance Taylor
Change-Id: Idd872c5b90dbca564ed8a37bb3683e642142ae63 Reviewed-on: https://go-review.googlesource.com/c/go/+/505015 Reviewed-by: Than McIntosh <thanm@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Ian Lance Taylor <iant@google.com>
2023-06-21doc/go1.21: correct GOOS to GOARCH (another location)Ian Lance Taylor
Change-Id: Ie71bc41bd7f1aecf6ce69a8b310668fdd03da42b Reviewed-on: https://go-review.googlesource.com/c/go/+/504880 TryBot-Bypass: Ian Lance Taylor <iant@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Reviewed-by: Rhys Hiltner <rhys@justin.tv> Auto-Submit: Ian Lance Taylor <iant@google.com> Reviewed-by: Eli Bendersky <eliben@google.com>
2023-06-21doc/go1.21: correct GOOS to GOARCHIan Lance Taylor
For #57752 Fixes #60924 Change-Id: Ie1e16c041885abb51dd6c2f0b7dfa03091cfb338 Reviewed-on: https://go-review.googlesource.com/c/go/+/504879 Reviewed-by: Ian Lance Taylor <iant@google.com> Reviewed-by: Eli Bendersky <eliben@google.com> TryBot-Bypass: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com>
2023-06-21go/types, types2: avoid spurious "declared and not used" errorRobert Griesemer
Fixes #60906. Change-Id: Iba117b36041f72a54ce82cc914f8fa3b07a6fb2e Reviewed-on: https://go-review.googlesource.com/c/go/+/504877 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Robert Findley <rfindley@google.com> Run-TryBot: Robert Griesemer <gri@google.com> Reviewed-by: Robert Griesemer <gri@google.com> Auto-Submit: Robert Griesemer <gri@google.com>
2023-06-21runtime: relate GODEBUG=gctrace output to runtime/metricsMichael Anthony Knyszek
There's more I could list here, but the mapping becomes more complicated and more fragile. I think this is sufficient to start with. Fixes #46846. Change-Id: I6803486a64888b2f38e244b8e2175ad064d648ed Reviewed-on: https://go-review.googlesource.com/c/go/+/504115 Reviewed-by: Michael Pratt <mpratt@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Michael Knyszek <mknyszek@google.com> Auto-Submit: Michael Knyszek <mknyszek@google.com>
2023-06-21cmd/go: shorten longest 5 testsRuss Cox
Running go test -parallel=1 -v, these are the top 10 tests: PASS: TestScript/mod_invalid_version 40.14s PASS: TestScript/build_cache_output 46.82s PASS: TestScript/get_legacy 48.69s PASS: TestTestCache 58.44s PASS: TestScript/mod_get_direct 62.88s PASS: TestScript/build_pgo_auto_multi 63.49s PASS: TestScript/build_pgo_auto 70.69s PASS: TestScript/gcflags_patterns 95.17s PASS: TestScript/mod_list_compiled_concurrent 124.31s PASS: TestScript/vet_flags 202.85s Change the top 5 not to run builds at all, so they don't have to use -a or clear the go build cache. mod_get_direct should be replaced with a vcs-test test. mod_invalid_version should be replaced with a vcs-test test. get_legacy should be deleted eventually. Change-Id: Id67c458b1a96c912d89cbece341372c2ef5ee082 Reviewed-on: https://go-review.googlesource.com/c/go/+/504536 Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-21cmd/compile/internal/ir: typocuiweixie
n.TypeCheck() == 3 is never true now, in n.SetTypecheck(x), when x > 2, it panic. Change-Id: Ic876680435d4536eb63dcedee20a07ccdf918b91 Reviewed-on: https://go-review.googlesource.com/c/go/+/504435 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Run-TryBot: Matthew Dempsky <mdempsky@google.com> Auto-Submit: Matthew Dempsky <mdempsky@google.com>
2023-06-20log/slog: fix HandlerOptions.ReplaceAttr docJonathan Amsterdam
It said that Attrs with an empty key are ignored. In fact, zero Attrs are ignored. Fixes #60870. Change-Id: I221d3a25b0f0cc9001e06e9cc76bab29292c0741 Reviewed-on: https://go-review.googlesource.com/c/go/+/504535 Run-TryBot: Jonathan Amsterdam <jba@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-20encoding/binary: on invalid type return -1 from SizeIan Lance Taylor
Size is defined as returning -1 if the type is not fixed-size. Before this CL cases like Size((*[]int)(nil)) would crash. Fixes #60892 Change-Id: Iee8e20a0aee24b542b78cb4160c3b2c5a3eb02c2 Reviewed-on: https://go-review.googlesource.com/c/go/+/504575 Auto-Submit: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by: Robert Griesemer <gri@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com>
2023-06-20cmd/go: add comment for intentional misspellingIan Lance Taylor
Try to avoid fixes from automatic spell checkers. Change-Id: I1d134fb2721decffa865a3f4d78bca4fce8e8fee Reviewed-on: https://go-review.googlesource.com/c/go/+/502658 Reviewed-by: Ian Lance Taylor <iant@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com> Run-TryBot: Ian Lance Taylor <iant@golang.org>
2023-06-20cmd/go: do not index std as a module in modcacheRuss Cox
We do not index std as a whole module ever. When working in the main Go repo, files in package change often, so we don't want to pay the cost of reindexing all of std when what we really need is just to reindex strings. Per-package indexing works better for that case. When using a released Go toolchain, we don't have to worry about the whole module changing, but if we switch to whole-module indexing at that point, we have the potential for bugs that only happen in released toolchains. Probably not worth the risk. For similar reasons, we don't index the current work module as a whole module (individual packages are changing), so we use the heuristic that we only do whole-module indexing in the module cache. The new toolchain modules live in the module cache, though, and our heuristic was causing whole-module indexing for them. As predicted, enabling whole-module indexing for std when it's completely untested does in fact lead to bugs (a very minor one). This CL turns off whole-module indexing for std even when it is in the module cache, to bring toolchain module behavior back in line with the other ways to run toolchains. For #57001. Change-Id: I5012dc713f566846eb4b2848facc7f75bc956eb9 Reviewed-on: https://go-review.googlesource.com/c/go/+/504119 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> Auto-Submit: Russ Cox <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org>
2023-06-20cmd/go: restore go.mod files during toolchain selectionRuss Cox
They have to be renamed to _go.mod to make a valid module. Copy them back to go.mod so that 'go test cmd' has a better chance of working. For #57001. Change-Id: Ied6f0dd77928996ab322a55c5606d7f75431e362 Reviewed-on: https://go-review.googlesource.com/c/go/+/504118 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> Auto-Submit: Russ Cox <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org>
2023-06-20cmd/distpack: rename go.mod to _go.mod in toolchain modulesRuss Cox
Modules cannot contain go.mod files except at the root (and we don't keep one at the root). Rename the other go.mod files to _go.mod. dl2mod, which we used to convert all the old releases, did this renaming, but it was missed when porting that code to distpack. For #57001. Fixes #60847. Change-Id: I4d646b96b5be15df3b79193e254ddc9b11cc8734 Reviewed-on: https://go-review.googlesource.com/c/go/+/503979 Auto-Submit: Russ Cox <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Heschi Kreinick <heschi@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com>
2023-06-20cmd/go: disable sumdb less often for toolchain downloadsRuss Cox
There is a chicken and egg problem with always requiring the checksum database for toolchain module downloads, since the checksum database populates its entry by doing its own module download. Don't require the checksum database for GOPROXY=file:/// (for local testing) and when running on the Go module mirror. For #60847. Change-Id: I5d67d585169ae0fa73109df233baae8ba5fe5dd3 Reviewed-on: https://go-review.googlesource.com/c/go/+/503978 Reviewed-by: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Russ Cox <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org>
2023-06-20internal/bisect: add 'q' hash option for quiet hash behavior switchingDavid Chase
This is intended for the specific case of 'fmahash=qn' where someone wants to disable fma without all the hash-search-handshake output. There are cases where arm64, ppc64, and s390x users might want to do this. Change-Id: Iaf46c68a00d7c9f7f82fd98a4548b72610f84bed Reviewed-on: https://go-review.googlesource.com/c/go/+/503776 Run-TryBot: David Chase <drchase@google.com> Reviewed-by: Russ Cox <rsc@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-20runtime/trace: add godoc linksOlivier Mengué
Change-Id: I6db8ce8d7e0a1cb3d955493fa49eb7dff372eb38 Reviewed-on: https://go-review.googlesource.com/c/go/+/504375 Run-TryBot: Ian Lance Taylor <iant@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-19cmd/go/internal/modfetch: fix retractions slice initial length not zeroJames Yang
When make slice of retractions, it should have initial length zero, to append more VersionIntervals. Currently without the zero length, the capacity used will be doubled after the appending, looks like a bug. Change-Id: Id3acaeffe557ca1d15c864b0377a66fee3a41f6c GitHub-Last-Rev: ed5fd5f6784c43195c531d8acc75560adff104ba GitHub-Pull-Request: golang/go#60354 Reviewed-on: https://go-review.googlesource.com/c/go/+/497118 Auto-Submit: Bryan Mills <bcmills@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
2023-06-17os/exec: document a method to check if a process is aliveMoritz Poldrack
Fixes #34396 Change-Id: I35c4e3447f84e349adf7edba92ccb19b324bfe14 GitHub-Last-Rev: 4f06764109ddd9bdfbe4841fc1bebebe026eeb29 GitHub-Pull-Request: golang/go#60763 Reviewed-on: https://go-review.googlesource.com/c/go/+/502815 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by: Ian Lance Taylor <iant@google.com> Run-TryBot: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com>
2023-06-16cmd/internal/moddeps: allow the "misc" module to be missing from GOROOTBryan C. Mills
cmd/distpack deletes that module from its distribution. For #24904. Change-Id: I69dd328d0f790a49db7a053d703ae985d9ebe9e4 Reviewed-on: https://go-review.googlesource.com/c/go/+/504060 Reviewed-by: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Bryan Mills <bcmills@google.com> Auto-Submit: Bryan Mills <bcmills@google.com>
2023-06-16cmd/compile/internal/syntax: skip GOROOT/misc in TestStdLib if it doesn't existBryan C. Mills
cmd/distpack deletes GOROOT/misc from its distribution. For #24904. Change-Id: I47c60e9a6d39d015683dde7f44bf7c34517b6a8e Reviewed-on: https://go-review.googlesource.com/c/go/+/504059 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> Run-TryBot: Bryan Mills <bcmills@google.com>
2023-06-16cmd/internal/testdir: skip Test if GOROOT/test does not existBryan C. Mills
cmd/distpack removes GOROOT/test from its distribution. For #24904. Change-Id: I6d1a8c608a1a1fe3fddfe0cd5279202ea9c2b3ce Reviewed-on: https://go-review.googlesource.com/c/go/+/504058 Run-TryBot: Bryan Mills <bcmills@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-16go/types: skip tests that require GOROOT/test if it is not presentBryan C. Mills
cmd/distpack removes GOROOT/test from its archive of the distribution. For #24904. Change-Id: Ifde441f048f8af52f8973555b196ab0520b48ab7 Reviewed-on: https://go-review.googlesource.com/c/go/+/504057 Auto-Submit: Bryan Mills <bcmills@google.com> Run-TryBot: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@google.com>
2023-06-16go/internal/gcimporter: skip TestImportTypeparamTests if GOROOT/test is missingBryan C. Mills
cmd/distpack removes GOROOT/test, so skip the test if it isn't there. For #24904. Change-Id: Iac381517d0540056b2ccea0dc1bd716113b18468 Reviewed-on: https://go-review.googlesource.com/c/go/+/504117 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> Run-TryBot: Bryan Mills <bcmills@google.com>
2023-06-16cmd/go/internal/test: don't wait for previous test actions when interruptedBryan C. Mills
Fixes #60203. Change-Id: I59a3320ede1eb3cf4443d7ea37b8cb39d01f222a Reviewed-on: https://go-review.googlesource.com/c/go/+/503936 Auto-Submit: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Bryan Mills <bcmills@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com>
2023-06-16path/filepath: avoid assuming that GOROOT/test is presentBryan C. Mills
GOROOT/test is pruned out by cmd/distpack. It isn't really needed for the test anyway; the test can instead use the "src/unicode" subdirectory, which is even within the same module. This test was previously adjusted in CL 13467045 and CL 31859. Unlike in previous iterations of the test, the directories used in this revision are covered by the Go 1 compatibility policy and thus unlikely to disappear. For #24904. Change-Id: I156ae18354bcbc2ddd8d22b210f16ba1e97cd5d1 Reviewed-on: https://go-review.googlesource.com/c/go/+/504116 Auto-Submit: Bryan Mills <bcmills@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Bryan Mills <bcmills@google.com>
2023-06-16cmd/cgo/internal/testshared: disable gccgo tests on PPC64Paul E. Murphy
Disable PPC64 gccgo tests until issue #60798 is fixed in gcc. Change-Id: I4d330e3d0ab6d4174ee6d8ff2cbedf53c8c4e3d9 Reviewed-on: https://go-review.googlesource.com/c/go/+/504095 Reviewed-by: Ian Lance Taylor <iant@google.com> Run-TryBot: Paul Murphy <murp@ibm.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com>
2023-06-16cmd/cgo/internal/testshared: strip newline from gccgo -dumpversionPaul E. Murphy
Otherwise, gccgo tests may be quietly skipped. For #60798 Change-Id: Iaad6b53c95ad4d407b917d8f62978979b82a4e81 Reviewed-on: https://go-review.googlesource.com/c/go/+/503495 Reviewed-by: Ian Lance Taylor <iant@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Paul Murphy <murp@ibm.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-16compress/bzip2: fix typoJes Cok
Remove redundant "this". Change-Id: Ia845e44119bf5ba1862f62da335466219a37c325 GitHub-Last-Rev: f0cdaf03285da8b053b71cc2911f5ab5beff580b GitHub-Pull-Request: golang/go#60807 Reviewed-on: https://go-review.googlesource.com/c/go/+/503655 Reviewed-by: Ian Lance Taylor <iant@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com>
2023-06-16net/http: check RemoteAddr isn't nil before dereferencingAl Cutter
RemoteAddr can return nil in some cases, this fix prevents a panic. I chatted with @neild about this beforehand, but what's happening in our case is that a connection comes in to the HTTP server which is then immediately closed (we discovered this issue by accident using nmap). The network implementation that we're using (it happens to be gVisor via its gonet adaptor) is returning nil from RemoteAddr(), presumably as there is no remote at that point. But, ultimately, since RemoteAddr returns an interface it is always possible for it to return nil, and indeed conn.RemoteAddr in this file does exactly that if the conn is not ok. Change-Id: Ibe67ae6e30b68e2776df5ee2911bf5f1dc539641 GitHub-Last-Rev: ff3505d1d0b00ca16c68ec2a05f542978b79b170 GitHub-Pull-Request: golang/go#60823 Reviewed-on: https://go-review.googlesource.com/c/go/+/503656 Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Damien Neil <dneil@google.com> Run-TryBot: Damien Neil <dneil@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-16net/http: close req.Body only when it's non-nil on jsDmitri Shuralyov
The main change here is fixing the panic where it was called even when req.Body was nil. It might also work better to keep the req.Body.Close calls closer after req.Body is read, so do that too. Calling readableStreamPull.Release on a js.Func with a zero value is currently a no-op, but it seems better to avoid it anyway. Also remove readableStreamStart, readableStreamCancel while here. They were used in the initial but not final patch set of CL 458395. Fixes #60809. Change-Id: I6ff2e3b6ec2cd4b0c9c67939903e32908312db8d Reviewed-on: https://go-review.googlesource.com/c/go/+/503676 Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-16testing/fstest: fix the Glob test when dir entries are out of orderAchille Roussel
This change adds a test highlighting an issue with the fstest.TestFS test suite which occurred when the fs.FS implementation would expose directories returning unordered directory entries from their ReadDir method. --- FAIL: TestShuffledFS (0.00s) testfs_test.go:76: testing fs.Sub(fsys, tmp): TestFS found errors: .: Glob(`*e*`): wrong output: extra: one missing: one The issue came from having the wrong variable passed to the checkGlob method. There are two variables named list and list2, the latter is sorted, and the checkGlob method expects a sorted list but was passed list instead of list2. Change-Id: I5e49dccf14077e7d1fee51687eb6a5eeb0330c16 Reviewed-on: https://go-review.googlesource.com/c/go/+/503175 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Ian Lance Taylor <iant@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Run-TryBot: Ian Lance Taylor <iant@golang.org> Auto-Submit: Ian Lance Taylor <iant@google.com>
2023-06-16reflect: fix ArenaNew to match documentationMichael Anthony Knyszek
Currently ArenaNew expects the type passed in to be a *T and it returns a *T. This does not match the function's documentation. Since this is an experiment, change ArenaNew to match the documentation. This more closely aligns ArenaNew with arena.New. (Takes a type T, returns a *T value.) Note that this is a breaking change. However, as far as pkg.go.dev can tell, there's exactly one package using it in the open source world. Also, add smoke test for the exported API, which is just a wrapper around the internal API. Clearly there's enough room for error here that it should be tested, but we don't need thorough tests at this layer because that already exists in the runtime. We just need to make sure it basically works. Fixes #60528. Change-Id: I673cc4609378380ef80648b0c2eb2928e73f49c9 Reviewed-on: https://go-review.googlesource.com/c/go/+/501860 Run-TryBot: Michael Knyszek <mknyszek@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-16cmd/distpack: make go_$GOOS_$GOARCH_exec programs executableDmitri Shuralyov
The go command recognizes when a program named go_$GOOS_$GOARCH_exec is in PATH. There are two such programs living in GOROOT/misc/wasm. Like GOROOT/bin/{go,gofmt} and GOROOT/pkg/tool/**, these programs need to have the executable bit set to do their job, so set it. Comparing a distpack produced before and after this change shows that the pack.go file is modified, the two go_{js,wasip1}_wasm_exec programs have the new file mode, and there are no other changes, as expected. The mode change is relevant to the binary and source distributions only. No change to the module zip since it doesn't include GOROOT/misc at all, so no effect on previously created toolchain modules whose checksums are already recorded in the Go checksum database and cannot be changed. (Other than by changing their "v0.0.1" version, but that's expensive.) Fixes #60843. Change-Id: I799b6aacff59c0785cb7743cbd17dda5a9ef91be Reviewed-on: https://go-review.googlesource.com/c/go/+/503975 Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org>
2023-06-16runtime: use 1-byte load for address checking in racecallatomicCherry Mui
In racecallatomic, we do a load before calling into TSAN, so if the address is invalid we fault on the Go stack. We currently use a 8-byte load instruction, regardless of the data size that the atomic operation is performed on. So if, say, we are doing a LoadUint32 at an address that is the last 4 bytes of a memory mapping, we may fault unexpectedly. Do a 1-byte load instead. (Ideally we should do a load with the right size, so we fault correctly if we're given an unaligned address for a wide load across a page boundary. Leave that for another CL.) Fix AMD64, ARM64, and PPC64. The code already uses 1-byte load on S390X. Should fix #60825. Change-Id: I3dee93eb08ba180c85e86a9d2e71b5b520e8dcf0 Reviewed-on: https://go-review.googlesource.com/c/go/+/503937 Run-TryBot: Cherry Mui <cherryyz@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Than McIntosh <thanm@google.com> Reviewed-by: David Chase <drchase@google.com>
2023-06-15cmd/go: fix build config for 'go list -cover'Than McIntosh
When 'go list -cover' is run in a way that triggers package builds (for example, -export), ensure that the build step actually includes coverage instrumentation as part of the config. Without this we will wind up with incorrect build IDs. Fixes #60755. Change-Id: Ic84ab9e301d075bee5ff9d6828370a1708be0035 Reviewed-on: https://go-review.googlesource.com/c/go/+/502877 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Than McIntosh <thanm@google.com>
2023-06-15net/http: only disable Fetch API in testsDmitri Shuralyov
The Fetch API was meant to only be disabled in tests. Since wasm_exec.js defines a global 'process' object, it ended up being disabled anywhere that script is used. Make the heuristic stricter so that it's less likely to trigger anywhere but when testing js/wasm using Node.js. For #57613. Fixes #60808. Change-Id: Ief8def802b466ef4faad16daccefcfd72e4398b8 Reviewed-on: https://go-review.googlesource.com/c/go/+/503675 TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com> Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Damien Neil <dneil@google.com>
2023-06-15math: document that Min/Max differ from min/maxIan Lance Taylor
For #59488 Fixes #60616 Change-Id: Idf9f42d7d868999664652dd7b478684a474f1d96 Reviewed-on: https://go-review.googlesource.com/c/go/+/501355 Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Rob Pike <r@golang.org> Run-TryBot: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Ian Lance Taylor <iant@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Run-TryBot: Ian Lance Taylor <iant@golang.org>
2023-06-15cmd/compile: do not report division by error during typecheckCuong Manh Le
types2 have already errored about any spec-required overflows, and division by zero. CL 469595 unintentionally fixed typecheck not to error about overflows, but zero division is still be checked during tcArith. This causes unsafe operations with variable size failed to compile, instead of raising runtime error. Fixes #60601 Change-Id: I7bea2821099556835c920713397f7c5d8a4025ac Reviewed-on: https://go-review.googlesource.com/c/go/+/501735 Auto-Submit: Cuong Manh Le <cuong.manhle.vn@gmail.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org> Run-TryBot: Cuong Manh Le <cuong.manhle.vn@gmail.com> Reviewed-by: Keith Randall <khr@google.com> Reviewed-by: Cherry Mui <cherryyz@google.com>
2023-06-15slices: add sort benchmark for sorted stringsEli Bendersky
For #60777 Change-Id: I424535ce6454156c61af2f299228630ee304d165 Reviewed-on: https://go-review.googlesource.com/c/go/+/503815 Reviewed-by: Keith Randall <khr@google.com> Run-TryBot: Eli Bendersky <eliben@google.com> Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Eli Bendersky <eliben@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-15test/codegen: add fsqrt test for riscv64Meng Zhuo
Add FSQRTD FSQRTS codegen tests for riscv64 Change-Id: I16ca3753ad1ba37afbd9d0f887b078e33f98fda0 Reviewed-on: https://go-review.googlesource.com/c/go/+/503275 Reviewed-by: Keith Randall <khr@golang.org> Auto-Submit: Keith Randall <khr@golang.org> Run-TryBot: M Zhuo <mzh@golangcn.org> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Keith Randall <khr@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-06-15text/template: set variables correctly in range assignmentIan Lance Taylor
I unintentionally flipped them in CL 446795. For #56490 Fixes #60801 Change-Id: I57586bec052e1b2cc61513870ce24dd6ce17e56b Reviewed-on: https://go-review.googlesource.com/c/go/+/503575 Reviewed-by: Ian Lance Taylor <iant@google.com> Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by: Rob Pike <r@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Ian Lance Taylor <iant@google.com> Run-TryBot: Ian Lance Taylor <iant@google.com> Reviewed-by: Bryan Mills <bcmills@google.com>