aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/go/alldocs.go
AgeCommit message (Collapse)Author
2021-08-25[dev.cmdgo] all: merge master (c2f96e6) into dev.cmdgoMichael Matloob
src/cmd/go/testdata/script/work.txt and src/cmd/go/testdata/script/work_edit.txt were updated so the want files specified go1.18 as that's what go mod initwork will produce under Go 1.18. Conflicts: - src/cmd/go.mod - src/cmd/go.sum - src/cmd/go/internal/modload/init.go - src/cmd/go/internal/work/init.go - src/cmd/vendor/golang.org/x/tools/go/ast/astutil/rewrite.go - src/cmd/vendor/golang.org/x/tools/internal/typeparams/notypeparams.go - src/cmd/vendor/golang.org/x/tools/internal/typeparams/typeparams.go - src/cmd/vendor/modules.txt - src/cmd/vet/testdata/print/print.go Merge List: + 2021-08-24 c2f96e686f cmd/compile: mark ODYNAMICDOTTYPE as an expression that can panic + 2021-08-24 5b64381155 cmd/compile: fix naming of types inside instantiations + 2021-08-24 4a9f0cec29 cmd/compile: change irgen to generate exprs/stmts after decls processed + 2021-08-24 daa55b21d1 cmd/link: guarantee "section .debug_gdb_scripts" is always "$GOROOT/src/runtime/runtime-gdb.py". + 2021-08-24 e6798795ff cmd/compile/internal/types2: use TypeList in the Inferred struct + 2021-08-24 b1cdf860dd cmd/compile/internal/types2: use a TypeList type to hold type arguments + 2021-08-24 1ff0554b53 cmd/compile/internal/types2: use []*TypeParam rather than []*TypeName for type param lists + 2021-08-24 bd97763577 cmd/compile/internal/types2: use an opaque environment for Instantiate + 2021-08-24 bba460499c cmd/compile/internal/types2: don't export TypeSet + 2021-08-24 d70c69d830 embed: document the maximum file size supported + 2021-08-24 f98b6111eb go/token: match the implementation of index selection with sort.Search + 2021-08-24 8eeb1bff1d cmd/compile: reuse same node for global dictionaries + 2021-08-23 be1a693477 cmd/compile: fixes for non-constant Sizeof/Alignof/Offsetof + 2021-08-23 8157960d7f all: replace runtime SSE2 detection with GO386 setting + 2021-08-23 22540abf76 runtime: use RDTSCP for instruction stream serialized read of TSC + 2021-08-23 fa34678c67 internal/buildcfg: change GOEXPERIMENT to always return non-empty string + 2021-08-23 0a7f00ae23 cmd/compile: do not mark arrays used for map initialization noalg + 2021-08-23 6b9e3f883e cmd/compile: don't emit write barriers for offsets of global addresses + 2021-08-23 3081f817da cmd/compile: always remove receiver type from instantiated method values + 2021-08-23 8486ced8b0 cmd/compile: copy captured dictionary var to local var + 2021-08-23 aeec6dbfe0 spec: add example for method value in case of embedded method + 2021-08-23 f457ecc7f0 cmd/compile: fixing 15.go for -G=3 + 2021-08-23 f1d8ea1da3 reflect: fix memmove for big endian cases with new ABI + 2021-08-23 4fbb5c8666 go/types: use TypeList in the Inferred struct + 2021-08-23 7a6d64fed6 go/types: use a TypeList type to hold type arguments + 2021-08-23 2438660602 go/types: use []*TypeParam rather than []*TypeName type param lists + 2021-08-23 9fe5c7f122 go/types: add the TypeParam.Obj method + 2021-08-23 baf2866956 go/types: move to an opaque environment for Instantiate + 2021-08-23 c7e354d9d1 go/types: return an error from Instantiate + 2021-08-23 c1a14781ec runtime: remove unused cpu architecture feature variables from binaries + 2021-08-23 457418b475 cmd/go: fix long test builders + 2021-08-22 86ee89225a strings: smarter growth of temporal buffer and avoid copying on return + 2021-08-22 29d7e5472b go/types: report argument type for unsafe.OffsetOf + 2021-08-22 8fcc614360 cmd/compile/internal/types2: enable TestSelection API test + 2021-08-22 5d5e50c3db os/user: simplify test skip for plan9 + 2021-08-22 5d0c2840da cmd/compile/internal/types2: report argument type for unsafe.OffsetOf + 2021-08-22 19585826fa math/big: clarified doc string for SetMantExp + 2021-08-22 6416bde023 runtime: use asmcgocall_no_g when calling sigprocmask on openbsd + 2021-08-22 bd6845965c reflect: add example for FieldByIndex + 2021-08-22 96d816c574 runtime: fix buckHashSize duplication + 2021-08-21 6e50991d2a strconv: reject surrogate halves in Unquote + 2021-08-21 8fff20ffeb cmd/compile: absorb NEG into branch when possible on riscv64 + 2021-08-21 bcd146d398 cmd/compile: convert branch with zero to more optimal branch zero on riscv64 + 2021-08-21 dcee007aad cmd/compile: sort regalloc switch by architecture + 2021-08-21 e17439e087 go/types: don't override x.mode before using it + 2021-08-21 c9912780ab cmd/compile: enable -G=3 by default + 2021-08-20 97d17dc023 test/typeparam: add a test case for issue46591 + 2021-08-20 835ff47c16 cmd/internal/buildid: reject empty id + 2021-08-20 f67e31d643 test: enable regabi test on arm64 + 2021-08-20 ab9aaf46ee cmd/compile/internal/syntax: add PosBase.Trimmed + 2021-08-20 5045477be8 net/http: fix typo in header.go + 2021-08-20 0f25251127 go/types: change Checker.verify to return an error + 2021-08-20 30a423eb39 go/types: no need to validate substituted instances + 2021-08-20 e49775e057 go/types: consolidate verification logic + 2021-08-20 4d00fcbc43 go/types: clean up panics in instantiation + 2021-08-20 bacbc33439 archive/zip: prevent preallocation check from overflowing + 2021-08-20 7007431374 crypto/rand, internal/syscall/unix: don't use getentropy on iOS + 2021-08-20 303446395d cmd/compile: use typeAndStr directly in signatslice + 2021-08-20 e9e0d1ef70 cmd/asm/internal/arch: adds the missing type check for arm64 SXTB extension + 2021-08-20 c92c2c9d62 cmd/internal/obj/arm64: disable the pre and post index formats for pseudo registers + 2021-08-19 65074a4086 cmd/dist: remove unused variables + 2021-08-19 0e598e7da4 syscall: add SyscallN + 2021-08-19 91e2e3b903 cmd/compile: prevent duplicated works in WriteRuntimeTypes + 2021-08-19 9871726c72 reflect: add test for invalid conversion + 2021-08-19 69d8fbec7a cmd/compile/internal/types2: return an error from Instantiate + 2021-08-19 3bdc1799d6 io: unexport internal methods + 2021-08-19 740f7d7370 archive/tar: unexport internal methods + 2021-08-19 c85695a117 cmd/compile: add support for //go:nointerface for -G=3 + 2021-08-18 322879d5c9 cmd/compile/internal/dwarfgen: use src.Pos.Rel{Filename,Line,Col} consistently + 2021-08-18 687f2acf6a cmd/compile: only use dictionaries for conversions to type parameters + 2021-08-18 eda3de0f79 cmd/compile/internal/types2: change Checker.verify to return an error + 2021-08-18 805d38a352 cmd/compile/internal/types2: no need to validate substituted instances + 2021-08-18 c2bd9ee2db cmd/compile: only sort methods/interfaces during export for -d=unifiedquirks + 2021-08-18 8f0578ef39 cmd/compile/internal/types2: consolidate verification logic + 2021-08-18 165ebd85a7 cmd/compile/internal/types2: clean up panics in instantiation + 2021-08-18 4a0fd73ead cmd/go/internal/work/exec: throw an error when buildP is negative + 2021-08-18 0c83e01e0c cmd/go/testdata/script: fix test script added by CL 334873 + 2021-08-18 8b471db71b path/filepath: change IsAbs to treat \\host\share as an absolute path + 2021-08-18 946e2543f8 runtime: use RDCYCLE for cputicks on riscv64 + 2021-08-18 8e18428e38 cmd/internal/obj/arm64: don't use REGTMP when moving C_AACON2 to a register + 2021-08-18 aef24d8f7d cmd/internal/obj/arm64: fix the encoding error when operating with ZR + 2021-08-17 ddfcc02352 cmd/link: do not use GO_LDSO when cross compile + 2021-08-17 a2a9a7b513 cmd/go: make mod init disallow invalid major version suffixes + 2021-08-17 3848488f0f cmd/go/internal/test: add an all sentinel to -vet + 2021-08-17 ace1730a41 cmd/go: go test flag -failfast should be cacheable + 2021-08-17 0f85b0c0e1 go/types: fix method lookup for type-parameter based types + 2021-08-17 9d9e3291fa cmd/compile/internal/types2: fix method lookup for type-parameter based types + 2021-08-17 cf12b0d1f9 cmd/trace: use newTaskDesc to create taskDesc + 2021-08-17 3001b0abf0 cmd/link: remove elfwritedynentsym + 2021-08-17 4012fea822 all: fix typos + 2021-08-17 b7b790a71a cmd/compile: fix CONVIFACE case converting interface to empty interface + 2021-08-17 a304273d74 cmd/compile/internal/types2: allow composite literals of type parameter type + 2021-08-17 d3deb2c359 cmd/compile: fix typos + 2021-08-17 29ec74fb82 go/types: check if the interface is already complete in Complete + 2021-08-17 91a935ea0f Revert "go/types: make Interface.Complete a no-op" + 2021-08-17 a8d39f151d src: simplify race.bash checking condition + 2021-08-17 1951afc919 cmd/compile: lowered MulUintptr on riscv64 + 2021-08-16 2a19333716 net: reduce allocations for UDP send/recv on Windows + 2021-08-16 9c5eb16f6c net: reduce allocation size in ReadFromUDP + 2021-08-16 d9349175ad net: remove allocation from UDPConn.WriteTo + 2021-08-16 8ff16c1990 runtime: accept restartable sequence pcdata values in isAsyncSafePoint + 2021-08-16 df9c5d8f5d cmd/cgo: fix unused parameter warnings in generated _cgo_main.c + 2021-08-16 213e157d3a testing/fstest: allow specifying file for "." in MapFS + 2021-08-16 c04a32e59a net: avoid memory copy calling absDomainName + 2021-08-16 6406227d71 runtime: skip sysmon workaround on NetBSD >= 9.2 + 2021-08-16 a05a7d49a9 cmd/go: address code review comments in test cgo_path_space_quote + 2021-08-16 54ce8793a8 cmd: update x/tools and remove copy of txtar + 2021-08-16 742dcba7bb cmd: support space and quotes in CC and CXX + 2021-08-16 41d991e4e1 cmd/internal/str: add utilities for quoting and splitting args + 2021-08-16 4466141822 cmd/go: add document -json in testflag + 2021-08-16 8d2066177d cmd/go/internal/modfetch/codehost: refactor gitRepo.loadRefs to be harder to misuse + 2021-08-16 ec27168712 net/http: drop headers with invalid keys in Header.Write + 2021-08-16 d35035f84e go/types: use the orig object for Named.Obj + 2021-08-16 ddffe30a21 go/types: rename TypeParams to TParamList + 2021-08-16 631af58e20 go/types: remove targs from substMap + 2021-08-16 d1ba047edf go/types: simplify Named.under + 2021-08-16 56a919f17f go/types: define Identical for instances + 2021-08-16 ff36d11470 go/types: merge Instantiate and InstantiateLazy + 2021-08-16 2460cf8602 go/types: remove Named.SetTArgs + 2021-08-16 281ed619f8 go/types: parameterized functions must have a body + 2021-08-16 aab1d1fcb9 go/types: expand is only required for *Named types + 2021-08-16 9ff61acbd7 go/types,types2: superficial changes to align types and types2 + 2021-08-16 fda8ee8b07 go/types: make Interface.Complete a no-op + 2021-08-16 e61d1445ab cmd/compile: fix panic with dead hidden closures + 2021-08-16 5c7a460a1c syscall: hoist Getsockname out of NetlinkRIB loops + 2021-08-16 850768bbc9 time: update current time comment + 2021-08-16 a0adf91d85 internal/syscall/unix: change Ioctl arg type to unsafe.Pointer on AIX + 2021-08-16 5a40100141 cmd/compile: fix dictionaries for nested closures + 2021-08-16 c92f5ee170 cmd/link: start at address 0 when external linking + 2021-08-16 5da2010840 doc: start draft of go1.18 release notes, move go1.17 to x/website + 2021-08-16 ea8298e2f5 cmd/compile/internal/ssa: delete unused code + 2021-08-16 fe489c86a7 go/types: limit termlist lengths + 2021-08-16 b9f135d98f go/types: change types2.Union API to accept a list of Terms + 2021-08-16 c2b4ec8f49 go/types: add defined type to term/termlist tests + 2021-08-16 11a43df461 go/types: minor cleanup of writeTParamList + 2021-08-16 b0fba64ef4 go/types: fix make with type parameter argument + 2021-08-16 efd206eb40 cmd/compile: intrinsify Mul64 on riscv64 + 2021-08-16 7b7d7d7818 go/types: fix range over exprs of type parameter type + 2021-08-16 02f932e173 go/types: better names for things (cleanup) + 2021-08-16 a192ef8ac4 go/types: cleanup panic calls + 2021-08-16 11a1f37b07 go/types: remove TestIncompleteInterfaces (cleanup) + 2021-08-16 0b61dc4577 go/types: remove unused gcCompatibilityMode flag (cleanup) + 2021-08-16 c88e3ff648 cmd/compile/internal/types2: use the underlying TypeParam in assignableTo + 2021-08-16 d043c8ea89 go/types: implement type sets with term lists + 2021-08-16 94002f6fca go/types: implement term lists + 2021-08-16 3d679c6554 syscall: use correct type for TIOCSPGRP/TIOCGPGRP + 2021-08-16 fcdc3c098c runtime: make asmcgocall g0/gsignal checks consistent + 2021-08-16 160d797260 runtime: correct mips64 asmcgocall signal stack behaviour + 2021-08-16 6a760d6c36 runtime: include pthread.h in defs_openbsd.go + 2021-08-16 7aa57a9687 runtime: remove unused getrlimit on linux/riscv64 + 2021-08-16 57c115e1f6 crypto/sha{256,512}: unname result parameters for consistency + 2021-08-15 717894cf80 cmd/compile/internal/types2: better error message for index syntax error (follow-up) + 2021-08-15 6ed9463133 cmd/compile/internal/syntax: better error message for index syntax error + 2021-08-15 48dfddbab3 lib/time: fix RFC 6557 url + 2021-08-15 1162aae0ad time/tzdata: update links in comment + 2021-08-14 ff3469b1c2 cmd/dist: remove tests using the typeparams build tag + 2021-08-14 0a0a160d4d sync/atomic: fix documentation for CompareAndSwap + 2021-08-14 49c688e45c cmd/compile/internal/types2: rename TypeParams to TParamList + 2021-08-14 b2253c8041 cmd/compile/internal/types2: remove targs from substMap + 2021-08-14 456759b246 cmd/compile/internal/types2: use the orig object for Named.Obj + 2021-08-14 2d250043b4 cmd/compile/internal/types2: simplify Named.under + 2021-08-14 50f4ebbdd3 cmd/compile/internal/types2: define Identical for instances + 2021-08-14 fc27eb50ff cmd/compile/internal/types2: merge Instantiate and InstantiateLazy + 2021-08-13 7eaabae84d net: update IP.String doc to reflect RFC 5952 conformance + 2021-08-13 58490972c0 cmd/link: fix dead reference link + 2021-08-13 a95f1b51be test: change issue10441.go from "build" to "compile" + 2021-08-13 89a4f99640 lib/time: fix tz-link ftp url + 2021-08-13 2eb4d68833 runtime: don't use systemstack for BeforeFork/AfterFork + 2021-08-13 bad1fc1265 test: add test case for CL 340609 + 2021-08-13 641e8bc2c7 test: add test case that caused a gofrontend compiler crash + 2021-08-13 98f3d7fecb all: gofmt more (but vendor, testdata, and top-level test directories) + 2021-08-13 20a620fd9f runtime: drop SIGPROF while in ARM < 7 kernel helpers + 2021-08-13 4c8ffb3baa cmd/internal/str: move package from cmd/go/internal/str + 2021-08-13 4be75faa3e cmd/go: make fewer 'go mod' commands update go.mod + 2021-08-13 1fffeddfe9 cmd/go: add -testsum flag to update go.sum in script tests + 2021-08-12 0d01934094 Merge "all: REVERSE MERGE dev.typeparams (4d3cc84) into master" + 2021-08-12 044ec4fa98 time: fix docs for new comma layouts + 2021-08-12 3601aedff6 all: REVERSE MERGE dev.typeparams (4d3cc84) into master + 2021-08-12 4d3cc84774 Merge "[dev.typeparams] all: merge master (46fd547) into dev.typeparams" into dev.typeparams + 2021-08-12 a64ab8d3ec [dev.typeparams] all: merge master (46fd547) into dev.typeparams + 2021-08-12 7e9f911ec4 [dev.typeparams] cmd/compile: remove some shape checks in type substituter, other cleanups + 2021-08-12 46fd547d89 internal/goversion: update Version to 1.18 + 2021-08-12 5805efc78e doc/go1.17: remove draft notice + 2021-08-12 39634e7dae CONTRIBUTORS: update for the Go 1.17 release + 2021-08-12 095bb790e1 os/exec: re-enable LookPathTest/16 + 2021-08-12 677dfe5ad6 [dev.typeparams] cmd/compile: don't print out node pointer in ir.Dump + 2021-08-11 dea23e9ca8 src/make.*: make --no-clean flag a no-op that prints a warning + 2021-08-11 8ab59d812a [dev.typeparams] cmd/compile: change export version to 1.17 for testing + 2021-08-11 d7d4f28a06 [dev.typeparams] runtime, internal/bytealg: remove regabi fallback code on AMD64 + 2021-08-11 eeb7899137 [dev.typeparams] internal/buildcfg: always enable regabi on AMD64 + 2021-08-11 d4c0ed26ac doc/go1.17: linker passes -I to extld as -Wl,--dynamic-linker + 2021-08-11 0888a8cd2d [dev.typeparams] cmd/compile/internal/types2: remove unused TypeParam.Bound method + 2021-08-10 7308d747e7 [dev.typeparams] cmd/compile/internal/types2: remove Named.SetTArgs + 2021-08-10 0f34a92df7 [dev.typeparams] go/types: don't expose the TypeSet API for 1.18 + 2021-08-10 40ba119e3f [dev.typeparams] cmd/compile: keep export format unchanged if no type params are exported + 2021-08-10 fb8579746c [dev.typeparams] internal/goexperiment: update comment for RegabiArgs requirements + 2021-08-10 2e250cc957 [dev.typeparams] cmd: update vendored golang.org/x/tools to 337cebd2c151 + 2021-08-10 2fbf6aafe7 [dev.typeparams] cmd/compile: handle interface type parameters in type switches + 2021-08-10 e4cfa2f6da [dev.typeparams] cmd/compile/internal/types2: parameterized functions must have a body + 2021-08-10 508624f359 [dev.typeparams] cmd/compile/internal/types2: expand is only required for *Named types + 2021-08-10 1f9c9d8530 doc: use "high address/low address" instead of "top/bottom" + 2021-08-09 f5f79c47f9 [dev.typeparams] cmd/compile: use types2.Constraint() rather than types2.Bound() + 2021-08-09 f1dce319ff cmd/go: with -mod=vendor, don't panic if there are duplicate requirements + 2021-08-09 9f4d6a8359 [dev.typeparams] cmd/compile: call transformArgs before early typecheckaste in noder + 2021-08-09 ca3c6985cd [dev.typeparams] cmd/compile: implement generic type switches + 2021-08-09 57668b84ff [dev.typeparams] cmd/compile: simplify interface conversions + 2021-08-09 7aeaad5c86 runtime/cgo: when using msan explicitly unpoison cgoCallers + 2021-08-08 507cc341ec doc: add example for conversion from slice expressions to array ptr + 2021-08-07 d10a904712 [dev.typeparams] cmd/compile: don't export/import type parameter indices anymore + 2021-08-07 891547e2d4 doc/go1.17: fix a typo introduced in CL 335135 + 2021-08-06 8eaf4d16bc make.bash: do not overwrite GO_LDSO if already set + 2021-08-06 63b968f4f8 doc/go1.17: clarify Modules changes + 2021-08-06 9e0ac72d68 [dev.typeparams] cmd/compile/internal/types2: remove Interface.Complete (cleanup) + 2021-08-06 9bd1817e41 [dev.typeparams] cmd/compile/internal/types2: limit termlist lengths + 2021-08-06 313924f272 [dev.typeparams] cmd/compile: swap export order of union term components (cleanup) + 2021-08-06 0d7dc417ea [dev.typeparams] cmd/compile: change types2.Union API to accept a list of Terms + 2021-08-06 09d82689ed [dev.typeparams] cmd/compile/internal/types2: add defined type to term/termlist tests + 2021-08-06 3a9fd99849 [dev.typeparams] cmd/compile/internal/syntax: cleanup panic calls + 2021-08-06 c3b57af8bc [dev.typeparams] cmd/compile/internal/types2: minor cleanup of writeTParamList + 2021-08-06 0811108670 [dev.typeparams] cmd/compile/internal/types2: fix make with type parameter argument + 2021-08-06 93285c89d1 [dev.typeparams] cmd/compile/internal/types2: fix range over exprs of type parameter type + 2021-08-06 5aac85ad5e [dev.typeparams] cmd/compile/internal/types2: better names for things (cleanup) + 2021-08-06 110343e4a2 [dev.typeparams] cmd/compile: cleanup wrapper code for generics + 2021-08-06 5e33d11e10 [dev.typeparams] cmd/compile: do transformCall with non-shape type of call + 2021-08-06 ac78501b9c [dev.typeparams] cmd/compile: make sure closures inside generic funcs are not compiled + 2021-08-06 70546f6404 runtime: allow arm64 SEH to be called if illegal instruction + 2021-08-05 fd45e267c2 runtime: warn that KeepAlive is not an unsafe.Pointer workaround + 2021-08-05 f78d538858 [dev.typeparams] cmd/compile/internal/types2: cleanup panic calls + 2021-08-05 c5b6c36ddd [dev.typeparams] cmd/compile/internal/types2: remove TestIncompleteInterfaces (cleanup) + 2021-08-05 f14908d01b [dev.typeparams] cmd/compile/internal/types2: remove unused gcCompatibilityMode flag (cleanup) + 2021-08-05 bb5608dd5d [dev.typeparams] cmd/compile/internal/types2: implement type sets with term lists + 2021-08-05 6dadee759c [dev.typeparams] cmd/compile: unified importReader receiver name to r + 2021-08-05 5dcb5e2cea [dev.typeparams] cmd/compile: dictionary/shape cleanup + 2021-08-05 3cdf8b429e [dev.typeparams] cmd/compile: fixing case where type arg is an interface + 2021-08-04 1b708c0260 [dev.typeparams] go/types: remove a stale comment (cleanup) + 2021-08-04 0ec2a8b42d [dev.typeparams] go/types: switch the TArgs API to NumTArgs/TArg + 2021-08-04 e5fe769be1 [dev.typeparams] cmd/compile/internal/types2: implement term lists + 2021-08-04 b730a26729 [dev.typeparams] cmd/compile: put shape types in their own package + 2021-08-04 e590cb64f9 [dev.typeparams] runtime: handle d.link carefully when freeing a defer + 2021-08-04 6e738868a7 net/http: speed up and deflake TestCancelRequestWhenSharingConnection + 2021-08-04 d27a889119 [dev.typeparams] go/types: move instance.go contents into named.go (cleanup) + 2021-08-04 b01e775e9c [dev.typeparams] go/types: print constraint info for type param operands + 2021-08-04 3efc8f9a8d [dev.typeparams] go/types: (TypeParam) SetBound -> SetConstraint + 2021-08-04 ed3667d079 [dev.typeparams] go/types: use type terms to represent unions + 2021-08-04 880ab6209e [dev.typeparams] cmd/compile/internal/types2: fix a panic in missingMethod + 2021-08-04 5b51cf47dc [dev.typeparams] go/types: implement type terms + 2021-08-04 e0d0907212 [dev.typeparams] go/types: use comparable bit rather than ==() method + 2021-08-04 18e0503724 [dev.typeparams] go/types: embedded type cannot be a (pointer to) a type parameter + 2021-08-04 89897473e2 [dev.typeparams] go/types: implement TypeParam.Constraint + 2021-08-04 1ea3596b41 [dev.typeparams] go/types: adjust unsafe.Alignof/Offsetof/Sizeof + 2021-08-03 88bd92bb6d [dev.typeparams] runtime: simplify freedefer + 2021-08-03 1a0630aef4 [dev.typeparams] runtime,cmd/compile,cmd/link: replace jmpdefer with a loop + 2021-08-03 077925e2b0 [dev.typeparams] runtime: remove unnecessary split-prevention from defer code + 2021-08-03 7ab8754029 [dev.typeparams] cmd/compile: avoid redundant method wrappers in unified IR + 2021-08-03 fe73f28dc5 [dev.typeparams] cmd/compile: set sym.Def to ir.Name for method value wrappers + 2021-08-03 656f0888b7 [dev.typeparams] cmd/compile: make softfloat mode work with register ABI + 2021-08-03 1b193598b3 [dev.typeparams] cmd/compile: fail early on unexpected types2.Invalid + 2021-08-02 e56234a305 [dev.typeparams] cmd/compile: simple shape cleanups + 2021-08-02 c3c19731a9 [dev.typeparams] cmd/compile/internal/types2: move instance.go contents into named.go (cleanup) + 2021-08-02 156eeb40a6 [dev.typeparams] cmd/compile: make HasShape() more efficient by implementing with a type flag + 2021-08-02 8a7ee4c51e io/fs: don't use absolute path in DirEntry.Name doc + 2021-08-02 283991bd7f [dev.typeparams] cmd/compile/internal/types2: print constraint info for type param operands + 2021-08-02 aa3d54da07 [dev.typeparams] runtime: rewrite softfloat functions to avoid using floats + 2021-07-31 b8ca6e59ed all: gofmt + 2021-07-31 0b8a9ccb25 [dev.typeparams] cmd/compile: make all pointer types have the same shape + 2021-07-30 7bed50e667 [dev.typeparams] Revert "[dev.typeparams] runtime: remove unnecessary split-prevention from defer code" + 2021-07-30 e3e9f0bb2d [dev.typeparams] Revert "[dev.typeparams] runtime,cmd/compile,cmd/link: replace jmpdefer with a loop" + 2021-07-30 40e561d933 [dev.typeparams] cmd/compile: allow types with the same underlying type to have the same shape + 2021-07-30 fd0011dca5 [dev.typeparams] runtime,cmd/compile,cmd/link: replace jmpdefer with a loop + 2021-07-30 53fd5b1b77 [dev.typeparams] runtime: remove unnecessary split-prevention from defer code + 2021-07-30 ea94e5d3c5 [dev.typeparams] runtime: use func() for deferred functions + 2021-07-30 b7a85e0003 net/http/httputil: close incoming ReverseProxy request body + 2021-07-30 4480e3b11a [dev.typeparams] go/types: backport lazy loading changes from CL 336252 + 2021-07-30 27283d208f [dev.typeparams] cmd/compile: remove now-unneeded check for '==' method for comparable type + 2021-07-29 3e7571f6ff [dev.typeparams] go/types,cmd/compile/internal/types2: fix TypeParams.At docs + 2021-07-29 1d35d8ffa5 [dev.typeparams] cmd/compile: switch unified IR from TypeParam.Bound to TypeParam.Constraint + 2021-07-29 35dbdda2fe [dev.typeparams] cmd/compile: remove remaining uses of Unshapify + 2021-07-29 600b7b431b [dev.typeparams] cmd/compile: handle meth expressions on typeparams + 2021-07-29 5ecbd811b5 [dev.typeparams] cmd/compile/internal/types2: (TypeParam) SetBound -> SetConstraint + 2021-07-29 46cc686381 [dev.typeparams] cmd/compile/internal/types2: use the TParams API consistently + 2021-07-29 27552e9172 [dev.typeparams] cmd/compile: set type parameter indices when they are bound + 2021-07-29 af903261e7 [dev.typeparams] go/types, types2: remove instance.verify field (cleanup) + 2021-07-29 c079b6baaa [dev.typeparams] cmd/compile/internal/types2: trigger verification while resolving instance + 2021-07-29 ff0c0dbca6 [dev.typeparams] cmd/compile/internal/types2: use type terms to represent unions + 2021-07-29 2fa8f00915 [dev.typeparams] cmd/compile/internal/types2: implement type terms + 2021-07-29 f4f503e0a3 [dev.typeparams] cmd/compile: implement generic .(T) operations + 2021-07-29 70fd4e47d7 runtime: avoid possible preemption when returning from Go to C + 2021-07-28 4a47e40a14 [dev.typeparams] cmd/compile: don't export blank functions in unified IR + 2021-07-28 506fd520d5 [dev.typeparams] cmd/compile: don't compile blank functions + 2021-07-28 adedf54288 [dev.typeparams] test: rename blank functions + 2021-07-28 5355753009 [dev.typeparams] test/typeparam: gofmt -w + 2021-07-28 473e493d18 [dev.typeparams] cmd/compile/internal/types2: merge instance and Named to eliminate sanitization + 2021-07-28 e00a6ec084 [dev.typeparams] cmd/compile: mark methods of instantiated interface types as used + 2021-07-27 c751e2e6ba [dev.typeparams] cmd/compile/internal/types2: use comparable bit rather than ==() method + 2021-07-27 5d8f90f904 [dev.typeparams] cmd/compile: don't need to unshapify append calls + 2021-07-27 cb14e673ec [dev.typeparams] runtime: don't keep stack uintptr across potential stack move + 2021-07-26 37d2219960 [dev.typeparams] cmd/compile/internal/types2: embedded type cannot be a (pointer to) a type parameter + 2021-07-26 d6753fd491 [dev.typeparams] cmd/compile/internal/types2: implement TypeParam.Constraint + 2021-07-26 9e3274bb3d [dev.typeparams] cmd/compile/internal/types2: import regexp/syntax instead of cmd/compile/internal/syntax + 2021-07-26 b93f646125 [dev.typeparams] cmd/compile/internal/types2: fix a bug in package qualification logic + 2021-07-26 996b0dbc65 [dev.typeparams] all: merge master (ecaa681) into dev.typeparams + 2021-07-26 bfcb7c4c8a [dev.typeparams] cmd/compile: fix unified IR support for //go:nointerface + 2021-07-24 b27c7e30dc [dev.typeparams] cmd/compile: fix HasShape, add dottype test + 2021-07-24 a2e2b0362b [dev.typeparams] transformDot() should set Selection and tc flag for added ODOTs + 2021-07-24 3dc0a0a2c5 [dev.typeparams] cmd/compile: get rid of concretify use for bounds. + 2021-07-24 77e0bf294c [dev.typeparams] cmd/compile: introduce OCONVIDATA op + 2021-07-24 9f928f9318 [dev.typeparams] go/types, types2: set tset when constructing interfaces in the universe + 2021-07-23 6992dcdad9 [dev.typeparams] cmd/compile: fix some issues with cons.go + 2021-07-23 e6d956e1c5 [dev.typeparams] cmd/compile: add CONVIFACE nodes for return values during noder2 + 2021-07-23 02c0172500 [dev.typeparams] cmd/compile: add dictionary entries for itab conversion + 2021-07-23 12866bd8ea [dev.typeparams] Add CONVIFACE nodes in noder2, where possible + 2021-07-23 4cdc65d32a [dev.typeparams] cmd/compile/internal/types: format union types + 2021-07-22 244267e8c4 Merge "[dev.typeparams] all: merge master (798ec73) into dev.typeparams" into dev.typeparams + 2021-07-22 d8ceb133ca [dev.typeparams] runtime: mark TestGcSys as flaky + 2021-07-22 a27e325c59 [dev.typeparams] all: merge master (798ec73) into dev.typeparams + 2021-07-22 5cb84f0604 [dev.typeparams] cmd/compile: make sure types added to the dictionary are instantiated correctly + 2021-07-22 73162a54c2 [dev.typeparams] cmd/compile: remove outdate TODO in escape analysis + 2021-07-22 80127a7dfe [dev.typeparams] cmd/compile/internal/types2: adjust unsafe.Alignof/Offsetof/Sizeof + 2021-07-22 fca3e5c445 [dev.typeparams] cmd/compile: fix missing condition in usemethod + 2021-07-22 5ba06495c1 [dev.typeparams] go/types: use the TParams API consistently + 2021-07-22 6f57139c7a [dev.typeparams] go/types: set type parameter indices when they are bound + 2021-07-22 311baf65f4 [dev.typeparams] test: cleanup 'go env' and -goexperiment + 2021-07-22 b7149b781f [dev.typeparams] go/types: trigger verification while resolving instance + 2021-07-22 61f69d2559 [dev.typeparams] go/types: merge instance and Named to eliminate sanitization + 2021-07-22 8e9109e95a [dev.typeparams] Fix problem with 14.go + 2021-07-22 ee20dff27d [dev.typeparams] Get dictionaryCapture.go working. + 2021-07-21 4e6836e82c [dev.typeparams] Fix the types of the OFUNCINST nodes in noder2 + 2021-07-21 dcc8350ad3 [dev.typeparams] cmd/compile: handle ++/-- in noder2 for operands with generic type + 2021-07-21 f19e49e7b1 [dev.typeparams] cmd/compile: added a builtins.go test, fixed one bug + 2021-07-21 e6a2cf233f [dev.typeparams] cmd/compile: get runtime stuff working + 2021-07-21 4a97fe8c22 [dev.typeparams] cmd/compile: avoid adding incorrectly instantiated types to the dictionary + 2021-07-21 2fe4b14795 [dev.typeparams] cmd/compile: ensure methods of generic types survive linker pruning + 2021-07-21 73af5f718f [dev.typeparams] cmd/compile: disable failing generic tests + 2021-07-21 a7a17f0ca8 [dev.typeparams] cmd/compile: introduce named gcshape types + 2021-07-21 897970688b [dev.typeparams] cmd/compile: cleanup unified IR file format a little + 2021-07-21 d5f6ba943c [dev.typeparams] test: add regression test for go/defer wrapper + 2021-07-20 6a931673f0 [dev.typeparams] cmd/compile: add base.Assertf{,At} functions + 2021-07-20 e4994e71fb [dev.typeparams] all: merge master (c8f4e61) into dev.typeparams + 2021-07-19 c6d3d0b0ad [dev.typeparams] go/types: fix the type parameter index in applyTypeFunc + 2021-07-19 6bf2667d4e [dev.typeparams] go/types: more consistent handling of predeclared "any" + 2021-07-19 7e714f448e [dev.typeparams] go/types: embedding stand-alone type parameters is not permitted + 2021-07-19 82f875d735 [dev.typeparams] go/types: fix generic type indirection + 2021-07-19 62f6f130fe [dev.typeparams] go/types: interface identity must consider full type set + 2021-07-19 baeabf3b36 [dev.typeparams] go/types: cleanups around receiver type checks + 2021-07-19 b3d91e3a24 [dev.typeparams] go/types: implement delete(m, k) where m is of type parameter type + 2021-07-19 cf7e66b7d4 [dev.typeparams] go/types: implement close(ch) where ch is of type parameter type + 2021-07-19 19b4142f24 [dev.typeparams] go/types: implement ch <- x where ch is of type parameter type + 2021-07-19 d6d7f8458e [dev.typeparams] go/types: implement <-ch where ch is of type parameter type + 2021-07-19 796ac6d5f2 [dev.typeparams] go/types: move methods on *Named into named.go + 2021-07-19 22f39ba208 [dev.typeparams] go/types: use InstantiateLazy to create instance types (cleanup) + 2021-07-19 4a72be87b3 [dev.typeparams] go/types: move instantiation code to instantiate.go (cleanup) + 2021-07-19 41ff0aac13 [dev.typeparams] go/types: replace types2.Instantiate with Checker.Instantiate + 2021-07-19 9e147c55b7 [dev.typeparams] go/types: update TypeParam APIs to match types2 + 2021-07-19 22a38ba5ca [dev.typeparams] go/types: remove unnecessary guard from NewInterfaceType + 2021-07-19 b96f1b9419 [dev.typeparams] go/types: add some missing APIs for the importer + 2021-07-19 43ad1ffa99 [dev.typeparams] go/types: recursive substitution must terminate (bug fix) + 2021-07-19 c7c13ae432 [dev.typeparams] go/types: use scope numbers to identify local types + 2021-07-19 ccf95f17dd [dev.typeparams] go/types: support local defined types + 2021-07-19 76b39959f4 [dev.typeparams] go/types: don't permit method calls on ptr to type parameter receivers + 2021-07-19 9b85985d36 [dev.typeparams] Separate out gcshape types that are instantiated types + 2021-07-17 df778e6fd9 [dev.typeparams] go/types: replace optype() with under() in various cases (cleanup) + 2021-07-17 e9836fe318 [dev.typeparams] go/types: clean up index expr implementation for type parameters + 2021-07-17 c4cd76fbbb [dev.typeparams] go/types: disallow "free" type parameter as RHS of a type declaration + 2021-07-16 521828091c [dev.typeparams] go/types: move (remaining) type decls into their own files (cleanup) + 2021-07-16 624d152db7 [dev.typeparams] go/types: move Interface type decl into interface.go (cleanup) + 2021-07-16 e12d43866d [dev.typeparams] go/types: move Signature type decl into signature.go (cleanup) + 2021-07-16 b3e7f23a48 [dev.typeparams] go/types: move Struct type decl into struct.go (cleanup) + 2021-07-16 7c35f5c2fc [dev.typeparams] go/types: rename newTypeSet -> computeTypeSet + 2021-07-16 de209e693a [dev.typeparams] go/types: make Interface.obj a *TypeName + 2021-07-16 0f4198b5e2 [dev.typeparams] go/types: delay interface check for type bounds + 2021-07-16 5f50a6442e [dev.typeparams] go/internal/typeparams: remove the Enabled guard + 2021-07-16 726ffce659 [dev.typeparams] go/types: "comparable" must not be visible before Go 1.18 + 2021-07-16 79955155e9 [dev.typeparams] go/types: move newTypeSet function into typeset.go + 2021-07-16 fe4f13404d [dev.typeparams] go/types: move embedding positions from Checker to Interface + 2021-07-16 b98b8b9b5b [dev.typeparams] go/types: remove unused *Checker arguments (cleanup) + 2021-07-16 fce6290e0a [dev.typeparams] go/types: remove typeparams wrappers and aliases + 2021-07-16 24f9eb2de3 [dev.typeparams] go/types: introduce type set abstraction for interfaces + 2021-07-16 b296e54618 [dev.typeparams] go/types: port lazy import resolution from types2 + 2021-07-16 10c8b7c1d7 [dev.typeparams] cmd/compile: use dictionary to convert arguments of ==, != to interfaces + 2021-07-16 ed9e109dc9 [dev.typeparams] cmd/compile: fix small -G=3 issues for tests disabled in run.go + 2021-07-16 3d8453e00e [dev.typeparams] cmd/compile/internal/types2: more consistent handling of predeclared "any" + 2021-07-16 334f2fc045 [dev.typeparams] go/*: switch from ListExpr to MultiIndexExpr + 2021-07-15 6b85a218b8 [dev.typeparams] cmd/compile: make TestUnifiedCompare insensitive to default -G level + 2021-07-14 4ff0e04c2e [dev.typeparams] cmd/compile/internal/types2: embedding stand-alone type parameters is not permitted + 2021-07-14 3a047326e8 [dev.typeparams] cmd/compile/internal/types2: fix generic type indirection + 2021-07-14 dd8bdf4a1f [dev.typeparams] cmd/compile/internal/types2: interface identity must consider full type set + 2021-07-14 2a8087817c [dev.typeparams] cmd/compile/internal/types2: cleanups around receiver type checks + 2021-07-14 95f8e64fc0 [dev.typeparams] cmd/compile/internal/types2: implement delete(m, k) where m is of type parameter type + 2021-07-14 5f0ea40c67 [dev.typeparams] cmd/compile/internal/types2: implement close(ch) where ch is of type parameter type + 2021-07-14 6511922a14 [dev.typeparams] cmd/compile/internal/types2: implement ch <- x where ch is of type parameter type + 2021-07-14 ff33d3dc3a [dev.typeparams] cmd/compile/internal/types2: implement <-ch where ch is of type parameter type + 2021-07-14 e3e6cd3022 [dev.typeparams] cmd/compile: fix escape printout bugs for -G=3 + 2021-07-14 2b10d7ff0b [dev.typeparams] go/types: export the Config.GoVersion field + 2021-07-14 5517053d17 [dev.typeparams] cmd/compile: record more typ/fun info for dictionaries in unified IR + 2021-07-14 82744bfbfc [dev.typeparams] cmd/compile: handle objStub earlier in reader + 2021-07-13 e5faa8d84b [dev.typeparams] cmd/compile/internal/types2: move methods on *Named into named.go (cleanup) + 2021-07-13 d0324eb8fb [dev.typeparams] cmd/compile/internal/types2: use InstantiateLazy to create instance types (cleanup) + 2021-07-13 70f1246a9f [dev.typeparams] cmd/compile/internal/types2: move instantiation code to instantiate.go (cleanup) + 2021-07-13 22e9265467 [dev.typeparams] cmd/compile/internal/types2: replace types2.Instantiate with Checker.Instantiate + 2021-07-12 1c783dc148 [dev.typeparams] Add optional sub-dict entry for typeparam bound calls + 2021-07-11 0dcab98fd8 [dev.typeparams] cmd/compile: slightly more incremental unified typecheck + 2021-07-10 3c3c1d8d28 [dev.typeparams] cmd/compile: more incremental typecheck for unified IR + 2021-07-10 a12ad27119 [dev.typeparams] cmd/compile: report functions declared in Go and assembly + 2021-07-10 5059aed9dd [dev.typeparams] internal/buildcfg: allow regabiwrappers on all GOARCH + 2021-07-09 f2ed30c31e [dev.typeparams] cmd/compile/internal/types2: recursive substitution must terminate (bug fix) + 2021-07-09 69d945fc6e [dev.typeparams] cmd/compile/internal/types2: use scope numbers to identify local types + 2021-07-09 04acb8a7b9 [dev.typeparams] cmd/compile: report mismatch between types because of //go:notinheap + 2021-07-08 2b1d70a137 [dev.typeparams] all: merge master (296ddf2) into dev.typeparams + 2021-07-08 42fe132787 [dev.typeparams] cmd/compile: cleanup ABI utils tests + 2021-07-08 d4f6d161e4 [dev.typeparams] cmd/compile: fix bunch of -G=3 bugs for test cases in test/typeparams/mdempsky + 2021-07-07 18135150b0 [dev.typeparams] cmd/compile/internal/types2: don't permit method calls on ptr to type parameter receivers + 2021-07-07 d2bf94fb86 [dev.typeparams] cmd/compile/internal/types2: replace optype() with under() in various cases (cleanup) + 2021-07-07 03ec8de24b [dev.typeparams] cmd/compile/internal/types2: clean up index expr implementation for type parameters + 2021-07-07 47547d8508 [dev.typeparams] cmd/compile/internal/types2: disallow "free" type parameter as RHS of a type declaration + 2021-07-07 60cb2cab97 [dev.typeparams] cmd/compile: fix bug with types2.Instantiate with interface type param + 2021-07-07 85267f402c [dev.typeparams] cmd/compile: move def of comparable to end of predeclared slices + 2021-07-07 c65ca97a45 [dev.typeparams] cmd/compile: fix windows longtest builder + 2021-07-07 501725032c [dev.typeparams] cmd/compile: handle derived types that are converted to interfaces + 2021-07-07 b614c05a15 [dev.typeparams] cmd/compile: add built-in name/type "comparable". + 2021-07-07 b4844c9f54 [dev.typeparams] cmd/compile: handle the (*T).M method expression with dictionaries + 2021-07-07 4676c3675e [dev.typeparams] cmd/compile: rename PartialCallType -> MethodValueType + 2021-07-07 5c42b6a953 [dev.typeparams] test: add regress tests that fail(ed) with -G=3 + 2021-07-07 49ade6b298 [dev.typeparams] test: add expected failure mechanism + 2021-07-04 cd00499c61 [dev.typeparams] cmd/compile: better Call constructor + 2021-07-04 899b158ee9 [dev.typeparams] cmd/compile: set Func.ClosureCalled in escape analysis + 2021-07-03 ea5369bac0 [dev.typeparams] cmd/compile: remove ir.CallUse + 2021-07-03 c45d0eaadb [dev.typeparams] cmd/compile: flatten OINLCALL in walk + 2021-07-03 ad2ba3ff51 [dev.typeparams] src,cmd: run 'go mod tidy' + 2021-07-03 5dac279fbd [dev.typeparams] cmd/compile: formalize "hidden parameters" idea + 2021-07-03 611056ec34 Merge "[dev.typeparams] all: merge master (912f075) into dev.typeparams" into dev.typeparams + 2021-07-02 ef39edefe1 [dev.typeparams] src,cmd: bump go.mod to 'go 1.18' + 2021-07-02 f35d86fd5f [dev.typeparams] all: merge master (912f075) into dev.typeparams + 2021-07-02 b994cc69e0 [dev.typeparams] cmd/compile: separate out creating instantiations from creating dictionaries + 2021-07-02 6dec18cc75 [dev.typeparams] cmd/compile: start using sub-dictionary entries where needed + 2021-07-02 a18726a648 [dev.typeparams] cmd/compile: incremental typecheck during unified IR + 2021-07-02 2aea44204e [dev.typeparams] cmd/compile: enable generics syntax with -lang=go1.18 + 2021-07-01 30e5f266ed [dev.typeparams] cmd/compile/internal/types2: move (remaining) type decls into their own files (cleanup) + 2021-07-01 9c1e7d9eff [dev.typeparams] cmd/compile/internal/types2: move Interface type decl into interface.go (cleanup) + 2021-07-01 838079beef [dev.typeparams] cmd/internal/dwarf: remove putInlinedFunc's callersym param + 2021-07-01 9ba294e15b [dev.typeparams] cmd/compile: fix getDictionarySym for methods references, write out sub-dictionaries + 2021-07-01 0e0b80cb56 [dev.typeparams] cmd/compile/internal/types2: move Signature type decl into signature.go (cleanup) + 2021-07-01 1aadb18f83 [dev.typeparams] cmd/compile/internal/types2: move Struct type decl into struct.go (cleanup) + 2021-07-01 fac21803ce [dev.typeparams] cmd/compile/internal/types2: rename newTypeSet -> computeTypeSet + 2021-07-01 1eb756689c [dev.typeparams] cmd/compile/internal/types2: make Interface.obj a *TypeName + 2021-07-01 9cb1b0f50b [dev.typeparams] cmd/compile/internal/types2: delay interface check for type bounds + 2021-07-01 1cd505c353 [dev.typeparams] cmd/compile/internal/types2: "comparable" must not be visible before Go 1.18 + 2021-07-01 706c580ee1 [dev.typeparams] cmd/compile: simplify autotmpname + 2021-07-01 372b312735 [dev.typeparams] cmd/compile: refactor top-level typechecking in unified IR + 2021-06-30 ad7e5b219e [dev.typeparams] all: merge master (4711bf3) into dev.typeparams + 2021-06-30 8767b87ab5 [dev.typeparams] cmd/compile: functions to create GC shape types/names for a concrete type + 2021-06-30 b47cbc2ffe [dev.typeparams] cmd/compile/internal/types2: move newTypeSet function into typeset.go + 2021-06-30 f0206e3df2 [dev.typeparams] cmd/compile/internal/types2: move embedding positions from Checker to Interface + 2021-06-30 1ff43d1b17 [dev.typeparams] cmd/compile/internal/types2: remove unused *Checker arguments (cleanup) + 2021-06-30 4b5fdb0b7a [dev.typeparams] cmd/compile/internal/types2: introduce type set abstraction for interfaces + 2021-06-30 f503740ccf [dev.typeparams] cmd/compile: add derived-type dictionaries to unified IR + 2021-06-29 6a5f7e8498 [dev.typeparams] cmd/compile: use dictionary entries for more conversion cases + 2021-06-29 5fa6bbc669 [dev.typeparams] cmd/compile: clean up instantiation and dictionary naming + 2021-06-29 dfa8fd861c [dev.typeparams] cmd/compile: add a field (method) name for function in TestABIUtilsInterfaces + 2021-06-28 64e6c75924 [dev.typeparams] cmd/compile: port fix for issue46725 to transform.go + 2021-06-28 f99b3fe2ab [dev.typeparams] cmd/compile: move MethodValueWrapper to walk + 2021-06-28 a8861b907d [dev.typeparams] cmd/compile: port CL 330838 for -G=3 + 2021-06-27 20a04f6041 [dev.typeparams] cmd/compile: delay method value wrapper generation until walk + 2021-06-27 1b995f91a5 [dev.typeparams] cmd/compile: rename OCALLPART to OMETHVALUE + 2021-06-27 d44ed5d144 [dev.typeparams] cmd/compile: add method value wrappers to unified IR + 2021-06-26 3ea0fcfe15 [dev.typeparams] cmd/compile: do not skip TestUnifiedCompare in short mode + 2021-06-26 27e3b797bb [dev.typeparams] cmd/compile: remove OCALLMETH Fatals in SSA generation + 2021-06-26 0cf71f7f92 [dev.typeparams] cmd/compile: rewrite method calls during typecheck + 2021-06-26 180c338c68 [dev.typeparams] cmd/compile: restore check for OCALLMETH in walkCall + 2021-06-26 942bcc2d4f [dev.typeparams] cmd/compile: fix wrong AST generation in devirtualization + 2021-06-26 d417b8cf87 [dev.typeparams] cmd/compile: clarify comment about checking reflect.Method in usemethod + 2021-06-25 ed647b16d0 [dev.typeparams] cmd/compile: use Type.LinkString for map keys + 2021-06-25 942edc7502 [dev.typeparams] cmd/compile: rename types.Type.{Short,Long}String to {Link,Name}String + 2021-06-25 373ca3a846 Merge "[dev.typeparams] all: merge master (37f9a8f) into dev.typeparams" into dev.typeparams + 2021-06-25 1b60284c0a [dev.typeparams] cmd/compile: simplify variable capturing in unified IR + 2021-06-25 9fe7c38d3d [dev.typeparams] cmd/compile: fix TestUnifiedCompare + 2021-06-25 f4198f85d5 [dev.typeparams] cmd/compile: generate wrappers within unified IR + 2021-06-25 3f1a517a45 [dev.typeparams] cmd/compile: refactor "need to emit" logic for types + 2021-06-25 badb98364b [dev.typeparams] cmd/compile: switch CaptureVars to use syntax.Walk + 2021-06-25 ac2de11cfb [dev.typeparams] all: merge master (37f9a8f) into dev.typeparams + 2021-06-25 2493c72742 [dev.typeparams] cmd/compile: rewrite method call into method expression during escape analysis + 2021-06-25 f190a9280d [dev.typeparams] cmd/compile: simplify usemethod + 2021-06-25 aee209c044 [dev.typeparams] cmd/compile: catch another mis-used OCALLMETH in backend + 2021-06-24 75ad323773 [dev.typeparams] test: skip -G=3 testing under GOEXPERIMENT=unified + 2021-06-24 808dca3b2d [dev.typeparams] cmd/compile: suppress liveness diagnostics of wrappers + 2021-06-24 ddb09af1b8 [dev.typeparams] cmd/compile: add derived types and subdictionaries to dictionaries + 2021-06-24 df00abc61b [dev.typeparams] cmd/compile: skip escape analysis diagnostics for wrappers + 2021-06-24 b55cc6687d [dev.typeparams] cmd/compile: use r.hasTypeParams in typIdx + 2021-06-24 9bdbf73c98 [dev.typeparams] cmd/compile: simplify writer.collectDecls + 2021-06-23 ee4fc0c1bc [dev.typeparams] Fix issues related to dictionaries and method calls with embedded fields + 2021-06-23 8165256bc2 [dev.typeparams] cmd/compile/internal/syntax: go/ast-style walk API + 2021-06-23 a72a499c24 [dev.typeparams] cmd/compile: optimize wrapping of constant arguments + 2021-06-23 eb691fdd62 [dev.typeparams] cmd/compile: escape analysis of method expression calls + 2021-06-23 0a0e3a3dea [dev.typeparams] cmd/compile: move call logic from order.go to escape + 2021-06-23 574ec1c645 [dev.typeparams] cmd/compile: desugar ORECOVER into ORECOVERFP + 2021-06-23 9be8303df9 [dev.typeparams] cmd/compile: add ORECOVERFP, OGETCALLER{PC,SP} ops + 2021-06-23 70f4ab6565 [dev.typeparams] cmd/compile: remove SetClosureCalled(false) hacks + 2021-06-23 107b1fce64 [dev.typeparams] cmd/compile: explain why expandInline needed + 2021-06-23 99732b9070 [dev.typeparams] cmd/compile: refactor escape analysis of calls + 2021-06-23 1a445dab66 [dev.typeparams] cmd/compile: remove CallExpr.PreserveClosure + 2021-06-23 e59a19cceb [dev.typeparams] cmd/compile: simplify walkGoDefer + 2021-06-23 493e177639 [dev.typeparams] cmd/compile: allow typecheck of OCHECKNIL + 2021-06-23 c4e0c652fb [dev.typeparams] cmd/compile: refactor CaptureName + 2021-06-22 62095c66e0 [dev.typeparams] go/types: adjust logic for method expression arg naming + 2021-06-22 541612b974 [dev.typeparams] cmd/gofmt: remove typeparams guards + 2021-06-22 3e6219c6a9 [dev.typeparams] cmd/compile: split package escape into multiple files + 2021-06-22 077100dfcd [dev.typeparams] cmd/compile: remove special escape analysis tags + 2021-06-22 859d903b06 [dev.typeparams] cmd/compile: add -d=unifiedquirks for quirks mode + 2021-06-22 d626ba27bb [dev.typeparams] all: merge master (16e82be) into dev.typeparams + 2021-06-21 844c076359 [dev.typeparams] cmd/compile: simplify import* functions + 2021-06-21 e57da8e53c [dev.typeparams] cmd/compile: explain why reader.funcExt need to set n.Defn + 2021-06-21 3f7f72a258 [dev.typeparams] cmd/compile: fold reader checking type params logic to separate method + 2021-06-20 d24c90a153 [dev.typeparams] cmd/compile: explain how pkgReader.typIdx handles alias cyclic + 2021-06-18 3f7a3133da [dev.typeparams] cmd/compile: add "toolstash -cmp"-like test of -d=unified + 2021-06-18 e9c01f9804 [dev.typeparams] cmd/compile: add missing copy of Field.Embedded in type substituter. + 2021-06-18 6fa0437958 [dev.typeparams] cmd/compile: add documentation for unified IR pipeline + 2021-06-18 54fe57bc22 [dev.typeparams] cmd/compile: record writer's stack at export data sync points + 2021-06-18 78aa251ace [dev.typeparams] cmd/go: include new internal packages in TestNewReleaseRebuildsStalePackagesInGOPATH + 2021-06-18 2a7900762c [dev.typeparams] go/types: report better error for invalid untyped operation + 2021-06-18 90096f445e [dev.typeparams] cmd/compile/internal/syntax: convert (most) parser tests to new type set syntax + 2021-06-17 feec53c4e5 [dev.typeparams] cmd/compile: skip types2 GC test during bootstrapping + 2021-06-17 fb84d213a8 [dev.typeparams] reflect: support big endian architectures in callMethod + 2021-06-17 9f50d9a0b4 [dev.typeparams] internal/reflectlite: remove unused ptrSize + 2021-06-17 890a8407a9 [dev.typeparams] internal/reflectlite: use goarch.PtrSize instead of the duplicated ptrSize [generated] + 2021-06-17 bfd9b63f12 [dev.typeparams] reflect: delete unused ptrSize and PtrSize + 2021-06-17 95c104ee61 [dev.typeparams] reflect: use goarch.PtrSize instead of the duplicated ptrSize [generated] + 2021-06-17 2e600fb8b3 [dev.typeparams] runtime/internal/sys: remove unused Goarch* and Goos* constants + 2021-06-17 46e1e74a86 [dev.typeparams] runtime: replace Goarch* constants with internal/goarch versions [generated] + 2021-06-17 7b0e9cae66 [dev.typeparams] runtime: replace Goos* constants with internal/goos versions [generated] + 2021-06-17 81a6a4354b [dev.typeparams] internal/goarch,internal/goos: rename Goos and Goarch constants + 2021-06-17 33d1b82d16 [dev.typeparams] runtime/internal/sys: replace ArchFamily and constants with goarch + 2021-06-17 85b12a8563 [dev.typeparams] runtime,runtime/internal/sys: remove unused BigEndian + 2021-06-17 9a93072a07 [dev.typeparams] runtime/internal/sys: replace BigEndian with goarch.BigEndian [generated] + 2021-06-17 9c58e399a4 [dev.typeparams] runtime: fix import sort order [generated] + 2021-06-17 671954e72e [dev.typeparams] runtime/internal/sys: replace GOOS with goos.GOOS + 2021-06-17 5c028751bd [dev.typeparams] runtime/internal/sys: replace uses of GOARCH with goarch.GOARCH + 2021-06-17 6d89c90fb1 [dev.typeparams] runtime/internal/sys: remove unused PtrSize + 2021-06-17 6d85891b29 [dev.typeparams] runtime: replace uses of runtime/internal/sys.PtrSize with internal/goarch.PtrSize [generated] + 2021-06-17 122f5e16d6 [dev.typeparams] internal/goarch,internal/goos: explode runtime/internal/sys into pieces + 2021-06-17 804ecc2581 [dev.typeparams] all: add GOEXPERIMENT=unified knob + 2021-06-17 b14fd720a8 [dev.typeparams] cmd/compile: make types2 report better error for invalid untyped operation + 2021-06-17 8115ae198d [dev.typeparams] go/types: disallow ~T where T is a defined type or an interface + 2021-06-17 6237e441bc [dev.typeparams] go/types: disallow type list handling + 2021-06-17 6e50f4f111 [dev.typeparams] go/types: convert testdata/check tests to type set syntax + 2021-06-17 b6fc4d01a8 [dev.typeparams] go/types: convert testdata/fixedbugs tests to type set sytax + 2021-06-17 795f4475e5 [dev.typeparams] go/types: convert testdata/examples tests to type set sytax + 2021-06-17 8e14a9cf04 [dev.typeparams] go/types: eliminate need for unpack and asUnion functions + 2021-06-17 aecfd5c29e [dev.typeparams] go/types: clean up type set/union intersection + 2021-06-17 c7a460526e [dev.typeparams] go/types: replace Sum type with Union type + 2021-06-17 e7451f6616 [dev.typeparams] go/types: accept embedded interface elements + 2021-06-17 54f854fb41 [dev.typeparams] go/parser: accept embedded type literals + 2021-06-17 ab4b3c4b15 [dev.typeparams] go/parser: accept "~" and "|" interface elements + 2021-06-17 7c5d7a4caf [dev.typeparams] go/token, go/scanner: add the "~" operator + 2021-06-17 ad59efb027 [dev.typeparams] go/ast: remove the typeparams build constraint + 2021-06-16 1ba2074440 [dev.typeparams] cmd/compile/internal/types2: support local defined types + 2021-06-16 dd95a4e3db [dev.typeparams] cmd/compile: simplify SSA devirtualization + 2021-06-16 132ea56d29 [dev.typeparams] cmd/compile: fix crawling of embeddable types + 2021-06-16 8f95eaddd3 [dev.typeparams] cmd/compile: fix missing sync implicit types + 2021-06-16 a4121d7dd6 [dev.typeparams] Revert "[dev.typeparams] runtime: make deferproc take a func() argument" + 2021-06-16 4d6f9d60cf [dev.typeparams] all: merge master (785a8f6) into dev.typeparams + 2021-06-16 ee0420d3b5 [dev.typeparams] cmd/compile: factor out implicit/explicit handling + 2021-06-15 cf1ae5fc36 [dev.typeparams] cmd/compile: add -d=unified flag to enable unified IR + 2021-06-15 79cd1687e6 [dev.typeparams] cmd/compile: unified IR construction + 2021-06-14 ea438bda85 [dev.typeparams] all: merge master (fdab5be) into dev.typeparams + 2021-06-13 8eeaf961c5 [dev.typeparams] cmd/compile: move //go:embed -lang check to noder + 2021-06-12 f1b1c2f67f [dev.typeparams] cmd/compile: simplify NewClosureFunc + 2021-06-12 db7c868307 [dev.typeparams] test: add string quoting support to test/run.go + 2021-06-12 0132b91127 [dev.typeparams] cmd/compile: refactor closure construction + 2021-06-12 8f00eb0099 [dev.typeparams] cmd/compile: avoid ir.DeepCopy in noder.constDecl + 2021-06-12 2954f11ead [dev.typeparams] cmd/compile: scaffolding for export data experiments + 2021-06-11 c93d5d1a52 [dev.typeparams] all: always enable regabig on AMD64 + 2021-06-11 2fe324858b [dev.typeparams] internal/buildcfg: always enable regabiwrappers on AMD64 + 2021-06-11 e0e9fb8aff [dev.typeparams] runtime: simplify defer record allocation + 2021-06-11 4468e1cfb9 [dev.typeparams] runtime: allow newproc split stack + 2021-06-11 ef6c5be160 [dev.typeparams] cmd/compile: fix wrapper generation for imported generics + 2021-06-11 4a735ce068 [dev.typeparams] cmd/compile: add "check" field to noder.gcimports + 2021-06-11 61888d47c4 [dev.typeparams] cmd/compile: allow embedding Type.Vargen into Sym.Name + 2021-06-11 62e32dd386 [dev.typeparams] cmd/compile: extract SetBaseTypeIndex function + 2021-06-11 18788245ea [dev.typeparams] cmd/compile: add ir.TypeNodeAt + 2021-06-09 b20747334a [dev.typeparams] cmd/compile, runtime: simplify opendefer metadata + 2021-06-09 c0a86c10f1 [dev.typeparams] cmd/compile: simplify openDeferSave + 2021-06-08 74b0b2772a [dev.typeparams] cmd/compile, runtime: remove _defer.siz field + 2021-06-08 b80a4c56f0 [dev.typeparams] runtime: allow deferproc split stack + 2021-06-08 83da32749c [dev.typeparams] runtime: make deferproc take a func() argument + 2021-06-08 8e5304f729 [dev.typeparams] cmd/compile, runtime: remove the siz argument of newproc/deferproc + 2021-06-08 00d01b5786 [dev.typeparams] runtime: remove tracebackdefers + 2021-06-08 12b37b713f [dev.typeparams] runtime: remove variadic defer/go calls + 2021-06-08 5b350505da [dev.typeparams] cmd/compile: remove variadic defer calls + 2021-06-08 a9de78ac88 [dev.typeparams] cmd/compile, runtime: always enable defer/go wrapping + 2021-06-08 e58bddde70 [dev.typeparams] internal/goexperiment: regenerate generated files + 2021-06-08 0c40cb4a07 [dev.typeparams] cmd/compile/internal/types2: provide valid signature in errors involving method expressions + 2021-06-07 74d46381b2 [dev.typeparams] cmd/compile: do extra markObjects during iexport to deal with generics + 2021-06-07 ccfb0ce8df [dev.typeparams] cmd/compile: convert generic values to interface type using dictionary + 2021-06-07 cf4b6dc48e [dev.typeparams] cmd/compile: allow conversions from type parameter to interface + 2021-06-07 bcb3927cb5 [dev.typeparams] cmd/compile: introduce IsTypeParam() helper + 2021-06-07 f0c97219a3 Merge "[dev.typeparams] all: merge master (8212707) into dev.typeparams" into dev.typeparams + 2021-06-07 201d55e637 [dev.typeparams] cmd/compile: create .dict Param in the package of the instantiated function + 2021-06-07 0e39cdc0e9 [dev.typeparams] all: merge master (8212707) into dev.typeparams + 2021-06-07 7c8a5be2d6 [dev.typeparams] go/types: factor out constraint satisfaction check + 2021-06-07 7497e57a39 [dev.typeparams] go/types: simplify Interface accessors + 2021-06-07 2f26adc232 [dev.typeparams] go/types: re-use existing code for Interface.Complete + 2021-06-07 1395952075 [dev.typeparams] go/types: add Named.SetTParams and Named.Orig methods + 2021-06-07 991dca0112 [dev.typeparams] go/types: move signature checking into separate file + 2021-06-06 c23294d6b3 [dev.typeparams] cmd/compile/internal/types2: return Universe for ((*Package)(nil)).Scope() + 2021-06-05 a5be3eaee2 [dev.typeparams] cmd/compile: refactor export writing + 2021-06-05 4c072c94dc [dev.typeparams] cmd/compile: refactor import reading + 2021-06-05 4e001a8d9e [dev.typeparams] runtime/race: make test compatible with types2 + 2021-06-05 246a5570be [dev.typeparams] cmd/compile: rename (types2.Inferred.)Targs to TArgs + 2021-06-05 692399fbaa [dev.typeparams] cmd/compile/internal/syntax: not all index expressions can be instantiated types + 2021-06-04 a94e4f5a85 [dev.typeparams] cmd/compile: point StructKeyExpr at the types.Field + 2021-06-04 bad388744b [dev.typeparams] cmd/compile: handle dictionaries for top-level instantiations + 2021-06-04 de61465156 [dev.typeparams] cmd/compile: allow inlining in instantiated functions + 2021-06-04 4cf7f5f694 [dev.typeparams] test: test regabidefers in live.go + 2021-06-04 3298c749ac [dev.typeparams] runtime: undo go'd closure argument workaround + 2021-06-04 46beeed0ac [dev.typeparams] cmd/compile: allow go'd closure to escape when compiling runtime + 2021-06-04 8e6dfe1b31 [dev.typeparams] cmd/compile: export/import of recursive generic types. + 2021-06-04 93a886a165 [dev.typeparams] go/types: move struct checking into separate file + 2021-06-04 ffc74ad5d3 [dev.typeparams] go/types: move interface checking into separate file + 2021-06-04 090a17c998 [dev.typeparams] go/types: use correct type parameter list in missingMethod + 2021-06-04 62c40878e4 [dev.typeparams] go/types: better recv Var for method expressions + 2021-06-04 e32fab145b [dev.typeparams] go/types: fix panic with nil package name + 2021-06-04 cd6e9df446 [dev.typeparams] go/types: print "incomplete" for interfaces in debug mode only + 2021-06-04 655246f99a [dev.typeparams] go/types: make TestManual work for directories + 2021-06-04 d7592ab424 [dev.typeparams] go/types: implement types.Instantiate + 2021-06-04 410fa4c75b [dev.typeparams] go/types: rename Inferred.Targs to TArgs + 2021-06-04 298149a915 [dev.typeparams] go/types: use Checker-provided type parameter IDs when possible + 2021-06-04 2175e2f573 [dev.typeparams] cmd/compile: lazy import resolution for types2 + 2021-06-03 4d2b528795 [dev.typeparams] internal/buildcfg: turn on register ABI by default on ARM64 + 2021-06-03 5f034f9b46 [dev.typeparams] internal/buildcfg: turn on regabireflect by default on ARM64 + 2021-06-03 026480d06b [dev.typeparams] cmd/compile: allow nil Syms in Sym.Less + 2021-06-03 a2d6a2caeb [dev.typeparams] internal/buildcfg: turn on regabiwrappers by default on ARM64 + 2021-06-03 55b4310acd [dev.typeparams] runtime: crash the GC at clobberdead pointer on ARM64 + 2021-06-03 6b1e4430bb [dev.typeparams] cmd/compile: implement clobberdead mode on ARM64 + 2021-06-03 1c947e4f31 [dev.typeparams] cmd/compile: properly copy tilde value for unions in types2-to-types1 conversion + 2021-06-03 e9ba0750b6 [dev.typeparams] reflect: guard abi_test.go with regabiargs build tag + 2021-06-03 28bd325e41 [dev.typeparams] runtime: use ABIInternal callbackWrap in callbackasm1 on ARM64 + 2021-06-03 3de4986852 [dev.typeparams] runtime: call cgocallbackg indirectly on ARM64 + 2021-06-03 5a40fab19f [dev.typeparams] runtime, internal/bytealg: port performance-critical functions to register ABI on ARM64 + 2021-06-03 370ff5ff96 [dev.typeparams] test: update all the typeparam tests to use the new union/tilde syntax + 2021-06-03 5a008a92e8 [dev.typeparams] internal/bytealg: call memeqbody directly in memequal_varlen on ARM64 + 2021-06-03 165d39a1d4 [dev.typeparams] test: adjust codegen test for register ABI on ARM64 + 2021-06-03 b5f37faf3b [dev.typeparams] cmd/internal/goobj: add duffzero/duffcopy to builtin list + 2021-06-03 9c054f4137 [dev.typeparams] cmd/link: take function address in assembly in TestFuncAlign + 2021-06-03 95c618e99a [dev.typeparams] cmd/compile/internal/types2: add Config.AllowTypeLists to control type list handling + 2021-06-03 10d6b36ca3 [dev.typeparams] cmd/compile/internal/types2: disallow ~T where T is a defined type or an interface + 2021-06-02 8cdce85bdf [dev.typeparams] cmd/compile/internal/types2: convert testdata/check tests to type set sytax + 2021-06-02 c790964ae4 [dev.typeparams] cmd/compile/internal/types2: convert testdata/fixedbugs tests to type set sytax + 2021-06-02 9a99e728fe [dev.typeparams] cmd/compile/internal/types2: convert testdata/examples tests to type set sytax + 2021-06-02 d36b7d7bdd [dev.typeparams] cmd/compile/internal/importer: review of gcimporter_test.go + 2021-06-02 3c1d502a19 [dev.typeparams] cmd/compile/internal/types2: eliminate need for unpack and asUnion functions + 2021-06-02 848b58e473 [dev.typeparams] cmd/compile/internal/types2: clean up type set/union intersection + 2021-06-02 97cb0113a3 [dev.typeparams] cmd/compile: fix export/import of constants with typeparam type + 2021-06-02 6b1cdeaef3 [dev.typeparams] cmd/link: include "go build" output in test logs + 2021-06-02 c7b9811581 [dev.typeparams] cmd/compile/internal/importer: review of gcimporter.go + 2021-06-02 498a48327f [dev.typeparams] cmd/compile: sort iface fields before expansion + 2021-06-02 cc52fdd1f3 [dev.typeparams] cmd/compile/internal/importer: review of exportdata.go + 2021-06-02 8c5c5a9e69 [dev.typeparams] cmd/compile/internal/importer: review of support.go + 2021-06-02 589e32dbdf [dev.typeparams] cmd/compile/internal/types2: replace Sum type with Union type + 2021-06-02 7b876def6c [dev.typeparams] cmd/compile: add dictionary argument to generic functions + 2021-06-02 aa9cfdf775 [dev.typeparams] runtime: update ABIInternal assembly with register ABI on ARM64 + 2021-06-02 0c123cdf8b [dev.typeparams] reflect: implement register ABI for MakeFunc etc. on ARM64 + 2021-06-02 2e4b79949f [dev.typeparams] runtime: implement register ABI for reflectcall on ARM64 + 2021-06-02 dc2cb529a8 [dev.typeparams] runtime: mark assembly functions called directly from compiler ABIInternal + 2021-06-02 d2b435117d test: fix error check messages for 2 types2 tests + 2021-06-02 b1f48e8add [dev.typeparams] cmd/compile: fix formatting + 2021-06-01 58ad36b359 [dev.typeparams] internal/buildcfg: allow regabi GOEXPERIMENTs on ARM64 + 2021-06-01 c3639918d1 [dev.typeparams] internal/abi: define ARM64 register ABI constants + 2021-06-01 6633dc8b09 [dev.typeparams] reflect: call ABI0 spill/unspill functions on AMD64 + 2021-06-01 e4003463ff [dev.typeparams] cmd/compile: match register-ABI version of memmove call on ARM64 + 2021-06-01 8e7abefdaa [dev.typeparams] cmd/compile: update ARM64 CALL* ops for register ABI + 2021-06-01 c9d1a2bdd2 [dev.typeparams] all: merge master (2725522) into dev.typeparams + 2021-06-01 2580e9a160 [dev.typeparams] cmd/compile: refactor noder/irgen helpers + 2021-06-01 4b10e4c547 [dev.typeparams] cmd/compile: handle ONONAME in subster.node + 2021-05-31 f32f4f58d9 [dev.typeparams] cmd/compile: simplify formatting of defined types + 2021-05-27 22f5ece3b1 [dev.typeparams] cmd/compile/internal/noder: refactor irgen import handling + 2021-05-27 417955d151 [dev.typeparams] cmd/compile/internal/inline: refactor mkinlcall + 2021-05-27 88583a2a66 [dev.typeparams] test: trim list of expected -G=3 failures + 2021-05-27 ea522bc546 [dev.typeparams] cmd/compile: add and use ir.RawOrigExpr + 2021-05-27 de5d1aca5e [dev.typeparams] cmd/compile: tweaks to match types2 + 2021-05-27 c2c1b53b39 [dev.typeparams] cmd/compile: use old export format if not compiling with generics + 2021-05-27 8c99e5db43 [dev.typeparams] cmd/compile/internal/types2: ensure that Named.check is nilled out once it is expanded + 2021-05-27 963f33b03b [dev.typeparams] cmd/compile: enable register args on ARM64 + 2021-05-27 06df0ee7fa [dev.typeparams] cmd/compile: add arg/result register load/spill code on ARM64 + 2021-05-26 1ec056244e [dev.typeparams] cmd/compile: inlining tweaks for toolstash + 2021-05-26 6da1661371 [dev.typeparams] cmd/compile: simplify inlining variadic calls + 2021-05-26 e99e9a6e01 [dev.typeparams] cmd/compile: simplify ~r/~b naming + 2021-05-26 4c68edd1fe [dev.typeparams] cmd/compile: add morestack arg spilling code on ARM64 + 2021-05-26 a4b2a04bc5 [dev.typeparams] cmd/internal/obj/arm64: use ABI-compatible registers in function prologue + 2021-05-26 4bb927f82e [dev.typeparams] cmd/compile: define ARM64 parameter registers + 2021-05-26 cf23daeda3 [dev.typeparams] cmd/compile: do not schedule in-register args late, even for block control + 2021-05-26 4ed6317e73 [dev.typeparams] cmd/compile: always generate (*T).M wrappers for instantiated methods + 2021-05-26 b7f7d1cd7b [dev.typeparams] cmd/compile: get type aliases working with generic types + 2021-05-26 95748d1b74 [dev.typeparams] cmd/compile: avoid some redundant type construction + 2021-05-26 fd54ae8b0c [dev.typeparams] cmd/compile: adding union support in types1 + 2021-05-25 6c9e1c58bc [dev.typeparams] test: fix and update run.go's generics testing + 2021-05-25 5c1e119d48 [dev.typeparams] all: merge master (f22ec51) into dev.typeparams + 2021-05-24 155dc0e541 [dev.typeparams] cmd/compile/internal/types2: factor out constraint satisfaction check + 2021-05-24 5770d7a637 [dev.typeparams] cmd/compile/internal/types2: accept embedded interface elements + 2021-05-24 cc7ceea585 [dev.typeparams] cmd/compile/internal/types2: simplify Interface accessors + 2021-05-24 1608577e05 [dev.typeparams] cmd/compile/internal/types2: re-use existing code for Interface.Complete + 2021-05-24 d48f6d9f6f [dev.typeparams] Don't check typecheck(3) on transform, so no need to export/import it + 2021-05-24 4c50721cda [dev.typeparams] cmd/compile: Fix handling of Name nodes during stenciling + 2021-05-24 dcaf785add [dev.typeparams] internal/buildcfg: enable defer/go wrapping everywhere + 2021-05-24 f642742678 [dev.typeparams] reflect: use internal/abi.FuncPCABI0 to take address of assembly functions + 2021-05-24 e0844acfc8 [dev.typeparams] runtime/pprof: replace funcPC with internal/abi.FuncPCABIInternal + 2021-05-24 ae26b45113 [dev.typeparams] cmd/compile/abi-internal.md: specify ARM64 register-based ABI + 2021-05-24 b18b2d372e [dev.typeparams] cmd/compile: fix case where we were copying a raw Node + 2021-05-21 5b1120fac7 [dev.typeparams] cmd/compile: fix handling of Nname field in (*subster).tstruct. + 2021-05-21 8d2b4cb6cc [dev.typeparams] cmd/compile: fixing import of comm clauses/closures in generic functions + 2021-05-21 626e89c261 [dev.typeparams] runtime: replace funcPC with internal/abi.FuncPCABIInternal + 2021-05-21 6a81e063dd [dev.typeparams] runtime: fix misuse of funcPC + 2021-05-21 7d928460a1 [dev.typeparams] runtime: use internal/abi.FuncPCABI0 to reference ABI0 assembly symbols + 2021-05-21 0e0a1f94f3 [dev.typeparams] runtime: use ABI0 handler addresses on Windows/ARM64 + 2021-05-21 fb42fb705d [dev.typeparams] runtime: use internal/abi.FuncPCABI0 to take address of assembly functions + 2021-05-21 21db1d193c [dev.typeparams] runtime: fix newproc arg size on ARM + 2021-05-21 b1a398cf0f [dev.typeparams] cmd/compile: add import/export of calls to builtin functions + 2021-05-21 ccbfbb1c33 [dev.typeparams] cmd/compile: export OFUNCINST and OSELRECV2 nodes (for generic functions) + 2021-05-21 243076da64 [dev.typeparams] cmd/compile/internal/types2: move signature checking into separate file + 2021-05-21 cfe0250497 [dev.typeparams] cmd/compile/internal/types2: move struct checking into separate file + 2021-05-21 211244e172 [dev.typeparams] cmd/compile/internal/types2: move interface checking into separate file + 2021-05-21 7b3ee6102d [dev.typeparams] cmd/compile: move to new export version, keep reading previous version + 2021-05-21 15ad61aff5 [dev.typeparams] cmd/compile: get export/import of generic types & functions working + 2021-05-20 468efd5e2f [dev.typeparams] cmd/compile: change method instantiations back to being functions + 2021-05-20 382c5dd5f7 [dev.typeparams] internal/buildcfg: turn on register ABI on all AMD64 platforms + 2021-05-20 240d6d00ca [dev.typeparams] cmd/link: mangle symbol ABI name on Plan 9 + 2021-05-20 ed2001232a [dev.typeparams] runtime: use internal/abi.FuncPCABI0 for sigtramp PC on Plan 9 + 2021-05-20 02117775d1 [dev.typeparams] cmd/compile, runtime: do not zero X15 on Plan 9 + 2021-05-20 a5cd89b8c3 [dev.typeparams] runtime: use internal/abi.FuncPCABI0 and cgo_unsafe_args for Solaris syscall wrappers + 2021-05-19 6bdfff112f [dev.typeparams] cmd/compile/internal/types2: use correct type parameter list in missingMethod + 2021-05-19 eff66248ea [dev.typeparams] cmd/compile/internal/types2: implement package height + 2021-05-19 3f6f12972b [dev.typeparams] runtime: use internal/abi.FuncPCABI0 for sigtramp PC on DragonflyBSD + 2021-05-19 b69347d24a [dev.typeparams] cmd/compile: simplify tparam's type + 2021-05-19 701bd60646 [dev.typeparams] cmd/compile: simplify targ's type + 2021-05-19 c2966ae272 [dev.typeparams] cmd/compile/internal/ir: more position details in dump + 2021-05-19 fb79f6955e [dev.typeparams] cmd/compile/internal/importer: implement position reading + 2021-05-19 c92ae885d9 [dev.typeparams] cmd/compile/internal/types2: better recv Var for method expressions + 2021-05-19 90b6e72605 [dev.typeparams] cmd/compile/internal/types2: tweak anonymous parameter position + 2021-05-19 fc9e64cc98 [dev.typeparams] cmd/compile/internal/types2: fix types2 panic + 2021-05-19 c81562d99f [dev.typeparams] test: update regress tests for types2 + 2021-05-19 81b22480cf [dev.typeparams] cmd/compile/internal/syntax: accept embedded type literals + 2021-05-18 f3fc8b5779 [dev.typeparams] cmd/compile: simplify type alias handling for export + 2021-05-18 140cd7c1d3 [dev.typeparams] runtime: use internal/abi.FuncPCABI0 for syscall wrappers on OpenBSD + 2021-05-18 bbc0059b03 [dev.typeparams] test: run more tests with -G=3 + 2021-05-18 f208f1ac99 [dev.typeparams] cmd/compile/internal/ir: more useful Fatalfs + 2021-05-18 c7dd3e305d [dev.typeparams] all: merge master (690a8c3) into dev.typeparams + 2021-05-18 077f03f4d8 [dev.typeparams] runtime: use internal/abi.FuncPCABI0 for sigtramp PC on FreeBSD + 2021-05-17 f39200b037 [dev.typeparams] go/constant: implement Kind.String + 2021-05-14 0d1e293b23 [dev.typeparams] cmd/compile/internal/types2: print "incomplete" for interfaces in debug mode only + 2021-05-14 03ed590e51 [dev.typeparams] cmd/compile/internal/types2: use Checker-provided type parameter IDs when possible + 2021-05-13 c3fa51c9a2 cmd/compile: changed representation of typeparam bound in types1 + 2021-05-13 9daf3cca82 [dev.typeparams] cmd/compile: keep instantiated method as a method, rather than converting to function + 2021-05-12 04f65d394c [dev.typeparams] cmd/compile: fix use of method values with stenciled methods + 2021-05-11 d2b3efcb90 [dev.typeparams] all: merge master (9b84814) into dev.typeparams Change-Id: Idedf034141b432e69a19b076dcc10c2923f3ee7d
2021-08-17cmd/go/internal/test: add an all sentinel to -vetColin Arnott
The vet flag either accepts a list of vets to run, or a distinguished value, off, to disable vet during test. By default only 100% reliable checks are run, thus there is no way to run all vets. This change adds another distinguished value, all, that runs every vet, by passing no flags. During development it was discovered that parsing of the -vet flag value is problematic, in that it accepts deprecated flags like -all. The root cause is detailed in #47309, but for now passing distinguished values (all, off) and anything else returns an error. Fixes #45963 Change-Id: I39fafb7d717dad51b507d560b3f6e604510a2881 Reviewed-on: https://go-review.googlesource.com/c/go/+/334873 Trust: Than McIntosh <thanm@google.com> Trust: Jay Conrod <jayconrod@google.com> Reviewed-by: Jay Conrod <jayconrod@google.com>
2021-08-17cmd/go: go test flag -failfast should be cacheablekezhao
Add failfast to cacheable list and update docs Fixes #47355 Change-Id: I75b371c45b80a3b179ff070b7b9d092a504380c0 GitHub-Last-Rev: abe61fd48c01fab4ef5ea5db013dcce4ead09c6f GitHub-Pull-Request: golang/go#47371 Reviewed-on: https://go-review.googlesource.com/c/go/+/337229 Reviewed-by: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com> Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org>
2021-08-16cmd/go: add document -json in testflag180909
Fixes #47628 Change-Id: I2776fbc22d8a73ca7adc2cf7ad85669d57cc7eae GitHub-Last-Rev: 826907b0797cdc25f921117e2ee44fc0dc2d21c3 GitHub-Pull-Request: golang/go#47683 Reviewed-on: https://go-review.googlesource.com/c/go/+/341991 Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com> Reviewed-by: Michael Matloob <matloob@golang.org>
2021-07-31[dev.cmdgo] cmd/go: add go mod editwork commandMichael Matloob
go mod editwork behaves similarly to go mod edit: it has flags to change the go version, and add and remove directory and replace directives. For #45713 Change-Id: I1c795c122bfe461d6e87dd731692e0bf1bbe2bf7 Reviewed-on: https://go-review.googlesource.com/c/go/+/334938 Trust: Michael Matloob <matloob@golang.org> Run-TryBot: Michael Matloob <matloob@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
2021-07-28[dev.cmdgo] all: merge master (9eee0ed) into dev.cmdgoJay Conrod
Conflicts: - src/cmd/go/internal/modload/init.go - src/cmd/go/internal/modload/load.go Merge List: + 2021-07-28 9eee0ed439 cmd/go: fix go.mod file name printed in error messages for replacements + 2021-07-28 b39e0f461c runtime: don't crash on nil pointers in checkptrAlignment + 2021-07-27 7cd10c1149 cmd/go: use .mod instead of .zip to determine if version has go.mod file + 2021-07-27 c8cf0f74e4 cmd/go: add missing flag in UsageLine + 2021-07-27 7ba8e796c9 testing: clarify T.Name returns a distinct name of the running test + 2021-07-27 33ff155970 go/types: preserve untyped constants on the RHS of a shift expression + 2021-07-26 840e583ff3 runtime: correct variable name in comment + 2021-07-26 bfbb288574 runtime: remove adjustTimers counter + 2021-07-26 9c81fd53b3 cmd/vet: add missing copyright header + 2021-07-26 ecaa6816bf doc: clarify non-nil zero length slice to array pointer conversion + 2021-07-26 1868f8296e crypto/x509: update iOS bundled roots to version 55188.120.1.0.1 + 2021-07-25 849b791129 spec: use consistent capitalization for rune literal hex constants + 2021-07-23 0914646ab9 doc/1.17: fix two dead rfc links + 2021-07-22 052da5717e cmd/compile: do not change field offset in ABI analysis + 2021-07-22 798ec73519 runtime: don't clear timerModifiedEarliest if adjustTimers is 0 + 2021-07-22 fdb45acd1f runtime: move mem profile sampling into m-acquired section + 2021-07-21 3e48c0381f reflect: add missing copyright header + 2021-07-21 48c88f1b1b reflect: add Value.CanConvert + 2021-07-20 9e26569293 cmd/go: don't add C compiler ID to hash for standard library + 2021-07-20 d568e6e075 runtime/debug: skip TestPanicOnFault on netbsd/arm + 2021-07-19 c8f4e6152d spec: correct example comment in Conversions from slice to array + 2021-07-19 1d91551b73 time: correct typo in documentation for UnixMicro + 2021-07-19 404127c30f cmd/compile: fix off-by-one error in traceback argument counting + 2021-07-19 6298cfe672 cmd/compile: fix typo in fatal message of builtinCall + 2021-07-19 49402bee36 cmd/{compile,link}: fix bug in map.zero handling + 2021-07-18 a66190ecee test/bench/go1: fix size for RegexpMatchMedium_32 + 2021-07-18 650fc2117a text/scanner: use Go convention in Position doc comment + 2021-07-16 aa4e0f528e net/http: correct capitalization in cancelTimeBody comment + 2021-07-15 0941dbca6a testing: clarify in docs that TestMain is advanced + 2021-07-15 69728ead87 cmd/go: update error messages in tests to match CL 332573 + 2021-07-15 c1cc9f9c3d cmd/compile: fix lookup package of redeclared dot import symbol + 2021-07-15 21a04e3335 doc/go1.17: mention GOARCH=loong64 + 2021-07-14 2b00a54baf go/build, runtime/internal/sys: reserve GOARCH=loong64 + 2021-07-14 60ddf42b46 cmd/go: change link in error message from /wiki to /doc. + 2021-07-13 d8f348a589 cmd/go: remove a duplicated word from 'go help mod graph' + 2021-07-12 a98589711d crypto/tls: test key type when casting + 2021-07-12 cfbd73ba33 doc/go1.17: editing pass over the "Compiler" section + 2021-07-09 ab4085ce84 runtime/pprof: call runtime.GC twice in memory profile test + 2021-07-08 296ddf2a93 net: filter bad names from Lookup functions instead of hard failing + 2021-07-08 ce76298ee7 Update oudated comment + 2021-07-08 2ca44fe221 doc/go1.17: linkify time.UnixMilli and time.UnixMicro + 2021-07-07 5c59e11f5e cmd/compile: remove special-casing of blank in types.sconv{,2} + 2021-07-07 b003a8b1ae cmd/compile: optimize types.sconv + 2021-07-07 11f5df2d67 cmd/compile: extract pkgqual from symfmt + 2021-07-07 991fd381d5 cmd/go: don't lock .mod and .sum files for read in overlay + 2021-07-07 186a3bb4b0 cmd/go/internal/modfetch/codehost: skip hg tests if no hg binary is present + 2021-07-07 00c00558e1 cmd/go/internal/modload: remove unused functions + 2021-07-07 f264879f74 cmd/go/internal/modload: fix an apparent typo in the AutoRoot comment + 2021-07-07 c96833e5ba doc: remove stale comment about arm64 port Change-Id: Ide5fb43a0fcb5d998386ed60dfd6ced241238a44
2021-07-27[dev.cmdgo] cmd/go: add go mod initwork commandMichael Matloob
This command is used to create a go.work file with a set of modules given in the arguments to the command. For #45713 Change-Id: I09f8cefc5849dd43c234dc4a37091791fcc02ebe Reviewed-on: https://go-review.googlesource.com/c/go/+/334936 Trust: Michael Matloob <matloob@golang.org> Run-TryBot: Michael Matloob <matloob@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
2021-07-27cmd/go: add missing flag in UsageLine180909
Change-Id: I31689dc8de1f6b95bb35578b20533c63903f7258 GitHub-Last-Rev: 5bfee0535ded703f84d45390d5a87295b6e5fe5a GitHub-Pull-Request: golang/go#47418 Reviewed-on: https://go-review.googlesource.com/c/go/+/337691 Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com> Trust: Jay Conrod <jayconrod@google.com> Trust: Russ Cox <rsc@golang.org>
2021-07-26[dev.cmdgo] cmd/go: add the workspace modeMichael Matloob
This change adds the outline of the implementation of the workspace mode. The go command will now locate go.work files, and read them to determine which modules are in the workspace. It will then put those modules in the root of the workspace when building the build list. It supports building, running, testing, and listing in workspaces. There are still many TODOs for undone work and other changes to fix certain cases. Some of these undone parts include: replaces and go.work.sum files, as well as go mod {test,why,verify}, excludes in workspaces, updating work files to include module names in comments and setting the GOWORK variable. For #45713 Change-Id: I72716af7a300a2896087fc8a79c04e951d248278 Reviewed-on: https://go-review.googlesource.com/c/go/+/334934 Trust: Michael Matloob <matloob@golang.org> Run-TryBot: Michael Matloob <matloob@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
2021-07-13cmd/go: remove a duplicated word from 'go help mod graph'Bryan C. Mills
For #46366 Change-Id: Ie9735027a3c4c0f4a604df30ca4d64dcdc62b45a Reviewed-on: https://go-review.googlesource.com/c/go/+/334375 Trust: Bryan C. Mills <bcmills@google.com> Run-TryBot: Bryan C. Mills <bcmills@google.com> Reviewed-by: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org>
2021-06-28cmd/go: add GOEXPERIMENT to `go env` outputMatthew Dempsky
This CL adds GOEXPERIMENT to `go env` output, and also makes it configurable via `GOENV`. Thanks to Baokun Lee's CL 304350 for the test and initial work on this. Fixes #45226. Change-Id: Ie7f92a8a503b6a2a4df3f6598f0b2bf2915e2e7d Reviewed-on: https://go-review.googlesource.com/c/go/+/328751 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com> Trust: Bryan C. Mills <bcmills@google.com> Trust: Matthew Dempsky <mdempsky@google.com>
2021-06-21cmd/go: add a -go flag to 'go mod graph'Bryan C. Mills
For #46366 Change-Id: I8417e6e4dbb8cb56ff7afc16893a01b7bb938217 Reviewed-on: https://go-review.googlesource.com/c/go/+/329529 Trust: Bryan C. Mills <bcmills@google.com> Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
2021-06-21cmd/go: document GOPPC64 environment variableIan Lance Taylor
Change-Id: I2d2c02eec4ac6eca218fa5334d32650c1620692c Reviewed-on: https://go-review.googlesource.com/c/go/+/329689 Trust: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Carlos Eduardo Seo <carlos.seo@linaro.org>
2021-06-15cmd/go, go/build: update docs to use //go:build syntaxDamien Neil
Fixes #46124. Change-Id: I6b8179032102a14befc37719f64ddace98397c97 Reviewed-on: https://go-review.googlesource.com/c/go/+/326931 Trust: Damien Neil <dneil@google.com> Run-TryBot: Damien Neil <dneil@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
2021-06-01cmd/go: add [-src] to documentationVitaly Zdanevich
Change-Id: I554b5021386575af6ff44571a95bb31b38a0547f GitHub-Last-Rev: 20aaec3aa0baee6112fc2e4d72e83f78b72a44ea GitHub-Pull-Request: golang/go#45956 Reviewed-on: https://go-review.googlesource.com/c/go/+/317109 Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com> Trust: Bryan C. Mills <bcmills@google.com>
2021-05-25cmd/go: add a -compat flag to 'go mod tidy'Bryan C. Mills
Fixes #46141 Change-Id: I9d4032e75252ade9eaa937389ea97ef3fb287499 Reviewed-on: https://go-review.googlesource.com/c/go/+/321071 Trust: Bryan C. Mills <bcmills@google.com> Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
2021-05-14cmd/go: fix spacing in help text of -overlay flagBen Hoyt
There was a space missing in the first line shown below, and an extra space in the second line shown. Thanks Peter Bourgon for noting this. BEFORE: $ go help build | grep -A1 'has some limitations' has some limitations:importantly, cgo files included from outside the include path must be in the same directory as the Go package they are AFTER: $ go help build | grep -A1 'has some limitations' has some limitations: importantly, cgo files included from outside the include path must be in the same directory as the Go package they are Note that I edited alldocs.go by hand here, as the mkalldocs.sh script produces a lot more changes, for example adding the -insecure flag documentation in. Not sure what's wrong there. Change-Id: I303f6d6b42b0e24cec0748a949dc23beec64b917 Reviewed-on: https://go-review.googlesource.com/c/go/+/319949 Reviewed-by: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com> Trust: Jay Conrod <jayconrod@google.com> Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org>
2021-04-30cmd/go: smooth out upgrade paths for lazy loadingBryan C. Mills
This change adds two possible upgrade paths for lazy loading: 1. Run 'go mod tidy -go=1.17'. 2. Starting in a module with no existing 'go' directive, run any 'go' command that updates the go.mod file. In the latter case, commands other than 'go mod tidy' may leave the go.mod file *very* untidy if it had non-trivial dependencies. (The 'go' invocation will promote all implicit eager dependencies to explicit lazy ones, which preserves the original module graph — most of which is not actually relevant.) 'go mod tidy -go=1.17' can be used to enable lazy loading without accidentally downgrading existing transitive dependencies. 'go mod tidy -go=1.16' can be used to disable lazy loading and clear away redundant roots in a single step (if reducing the go version), or to prune away dependencies of tests-of-external-tests (if increasing the go version). 'go mod tidy -go=1.15' can be used to add dependencies of tests-of-external-tests, although there isn't much point to that. DO NOT MERGE This change still needs an explicit test and a release note. Fixes #45094 For #36460 Change-Id: I68f057e39489dfd6a667cd11dc1e320c1ee1aec1 Reviewed-on: https://go-review.googlesource.com/c/go/+/315210 Trust: Bryan C. Mills <bcmills@google.com> Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Michael Matloob <matloob@golang.org>
2021-04-28testing: add -shuffle=off|on|N to alter the execution order of tests and ↵Paschalis Tsilias
benchmarks This CL adds a new flag to the testing package and the go test command which randomizes the execution order for tests and benchmarks. This can be useful for identifying unwanted dependencies between test or benchmark functions. The flag is off by default. If `-shuffle` is set to `on` then the system clock will be used as the seed value. If `-shuffle` is set to an integer N, then N will be used as the seed value. In both cases, the seed will be reported for failed runs so that they can reproduced later on. Fixes #28592 Change-Id: I62e7dfae5f63f97a0cbd7830ea844d9f7beac335 Reviewed-on: https://go-review.googlesource.com/c/go/+/310033 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Emmanuel Odeke <emmanuel@orijtech.com> Trust: Bryan C. Mills <bcmills@google.com>
2021-04-28cmd/go: make TOOLEXEC_IMPORTPATH consistent with 'go list -f {{.ImportPath}}'Daniel Martí
TOOLEXEC_IMPORTPATH is useful for the toolexec program to know what package is currently being built. This is otherwise tricky to figure out. Unfortunately, for test packages it was lacking. In the added test case, we have a total of four packages in 'go list -test': test/main test/main.test test/main [test/main.test] test/main_test [test/main.test] And, when running with -toolexec, one would get the following values: # test/main_test [test/main.test] compile TOOLEXEC_IMPORTPATH="test/main_test" # test/main [test/main.test] compile TOOLEXEC_IMPORTPATH="test/main" # test/main.test compile TOOLEXEC_IMPORTPATH="test/main.test" Note how the " [test/main.test]" suffixes are missing. Because of that, when one sees TOOLEXEC_IMPORTPATH="test/main", it is ambiguous whether the regular "test/main" package is meant, or its test variant, otherwise known as "test/main [test/main.test]" and including foo_test.go To fix this, we need unambiguous strings to identify the packages involved, just like one can do with "go list -test". "go list" already has such a field, ImportPath, which is also used when printing output from each build "action" as seen above. That string is not really an import path - internally, it's load.Package.Desc, and called a "description". However, it makes sense to be consistent with "go list -json", because it's the source of truth for practically all tools interacting with the Go toolchain. To keep cmd/go more consistent, "go list -f {{.ImportPath}}" now calls Package.Desc as well, instead of having its own copy of the string concatenation for ForTest. Fixes #44963. Change-Id: Ibce7fbb5549209dac50526043c0c7daa0beebc08 Reviewed-on: https://go-review.googlesource.com/c/go/+/313770 Reviewed-by: Bryan C. Mills <bcmills@google.com> Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Go Bot <gobot@golang.org> Trust: Daniel Martí <mvdan@mvdan.cc>
2021-04-16cmd/go, go/build: add ToolTags to build.DefaultRuss Cox
The build.Default context really needs to accurately describe the default build context. The goexperiment tags being a special case in the go command violates that rule and is the root cause of the various try-bot failures blocking the enabling of regabi. (The cleanups I made in golang.org/x/tools were long overdue but are not strictly necessary for making regabi work; this CL is.) Having moved the GOEXPERIMENT parsing into internal/buildcfg, go/build can now use it to set up build.Default, in the new field ToolTags, meant to hold toolchain-determined tags (for now, just the experiments). And at the same time we can remove the duplication of GOOS and GOARCH defaults. And then once build.Default is set up accurately, the special case code in cmd/go itself can be removed, and the special case code in test/run.go is at least a bit less special. Change-Id: Ib7394e10aa018e492cb9a83fb8fb9a5011a8c25b Reviewed-on: https://go-review.googlesource.com/c/go/+/310732 Trust: Russ Cox <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com> Reviewed-by: Austin Clements <austin@google.com>
2021-04-16cmd/go: support 'go run cmd@version'Jay Conrod
'go run' can now build a command at a specific version in module-aware mode, ignoring the go.mod file in the current directory if there is one. For #42088 Change-Id: I0bd9bcbe40c0442a268cd1cc315a8a2cbb5adeee Reviewed-on: https://go-review.googlesource.com/c/go/+/310074 Trust: Jay Conrod <jayconrod@google.com> Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
2021-04-13cmd/go: fix 'go help mod edit' JSON documentationJay Conrod
The object representing a module directive may have a "Deprecated" field but not a "Version" field. Other objects representing module versions have "Path" and "Version" fields but not "Deprecated". For #40357 Change-Id: Iad8063dfa6f7ceea22981a8a8f99e65fa3b7ffa0 Reviewed-on: https://go-review.googlesource.com/c/go/+/309337 Trust: Jay Conrod <jayconrod@google.com> Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
2021-04-09cmd/go: support module deprecationJay Conrod
A module is deprecated if its author adds a comment containing a paragraph starting with "Deprecated:" to its go.mod file. The comment must appear immediately before the "module" directive or as a suffix on the same line. The deprecation message runs from just after "Deprecated:" to the end of the paragraph. This is implemented in CL 301089. 'go list -m -u' loads deprecation messages from the latest version of each module, not considering retractions (i.e., deprecations and retractions are loaded from the same version). By default, deprecated modules are printed with a "(deprecated)" suffix. The full deprecation message is available in the -f and -json output. 'go get' prints deprecation warnings for modules named on the command line. It also prints warnings for modules needed to build packages named on the command line if those modules are direct dependencies of the main module. For #40357 Change-Id: Id81fb2b24710681b025becd6cd74f746f4378e78 Reviewed-on: https://go-review.googlesource.com/c/go/+/306334 Trust: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com> Reviewed-by: Michael Matloob <matloob@golang.org>
2021-03-30cmd/go: fix documentation on how to create new go.mod fileShulhan
The correct command to create new go.mod file should be 'go mod init', not 'go help init'. Change-Id: I1150621987d989997f8b75e6a13fe96423a11cf3 Reviewed-on: https://go-review.googlesource.com/c/go/+/305289 Reviewed-by: Jay Conrod <jayconrod@google.com> Reviewed-by: Daniel Martí <mvdan@mvdan.cc> Trust: Jay Conrod <jayconrod@google.com> Trust: Daniel Martí <mvdan@mvdan.cc> Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org>
2021-03-25cmd/go: add -benchtime to cacheable test flagsJohan Jansson
Add -benchtime to the list of flags that allow caching test results. If -benchtime is set without -bench, no benchmarks are run. The cache does not need to be invalidated in this case. If -benchtime is set with -bench, benchmarks are run. The cache is invalidated due to the -bench flag in this case. Fixes #44555 Change-Id: I2eb5c9f389a587d150fb984590d145251d0fa2dc Reviewed-on: https://go-review.googlesource.com/c/go/+/304689 Reviewed-by: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com> Trust: Jay Conrod <jayconrod@google.com> Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org>
2021-03-12cmd/go: fix godoc formatting for text from 'go help install'Jay Conrod
Fixes #44846 Change-Id: I5a12c6437a91ce59307483ffcc70e084edc32197 Reviewed-on: https://go-review.googlesource.com/c/go/+/301329 Trust: Jay Conrod <jayconrod@google.com> Run-TryBot: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org> TryBot-Result: Go Bot <gobot@golang.org>
2021-03-02cmd/go: remove -insecure flag on go getwitchard
Resolves #37519 Change-Id: Iba675a180b0e61b12835cdb6ecd4c6dc61e0605c GitHub-Last-Rev: aa018af6f8fc7f0b829820e831ad96734adcb8d0 GitHub-Pull-Request: golang/go#44724 Reviewed-on: https://go-review.googlesource.com/c/go/+/297709 Trust: Jay Conrod <jayconrod@google.com> Trust: Bryan C. Mills <bcmills@google.com> Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
2021-02-12[dev.regabi] all: merge master (ff0e93e) into dev.regabiCherry Zhang
Conflicts: - src/cmd/compile/internal/gc/walk.go gc/walk.go is changed in CL 290950 on the master branch but deleted in the dev.regabi branch and moved over to the walk package. This CL includes porting CL 290950 over to the new walk. Merge List: + 2021-02-12 ff0e93ea31 doc/go1.16: note that package path elements beginning with '.' are disallowed + 2021-02-11 249da7ec02 CONTRIBUTORS: update for the Go 1.16 release + 2021-02-11 864d4f1c6b cmd/go: multiple small 'go help' fixes + 2021-02-11 26ceae85a8 spec: More precise wording in section on function calls. + 2021-02-11 930c2c9a68 cmd/go: reject embedded files that can't be packed into modules + 2021-02-11 e5b08e6d5c io/fs: allow backslash in ValidPath, reject in os.DirFS.Open + 2021-02-10 ed8079096f cmd/compile: mark concrete call of reflect.(*rtype).Method as REFLECTMETHOD + 2021-02-09 e9c9683597 cmd/go: suppress errors from 'go get -d' for packages that only conditionally exist + 2021-02-09 e0ac989cf3 archive/tar: detect out of bounds accesses in PAX records resulting from padded lengths + 2021-02-09 c9d6f45fec runtime/metrics: fix a couple of documentation typpos + 2021-02-09 cea4e21b52 io/fs: backslash is always a glob meta character + 2021-02-08 dc725bfb3c doc/go1.16: mention new vet check for asn1.Unmarshal Change-Id: Ib28fffa7dfbff7f6cdbfaf4a304757fead7bbf19
2021-02-11cmd/go: multiple small 'go help' fixesJay Conrod
* Link to privacy policies for proxy.golang.org and sum.golang.org in 'go help modules'. It's important that both policies are linked from the go command's documentation. * Fix wording and typo in 'go help vcs' following comments in CL 290992, which adds reference documentation for GOVCS. * Fix whitespace on GOVCS in 'go help environment'. For #41730 Change-Id: I86abceacd4962b748361244026f219157c9285e9 Reviewed-on: https://go-review.googlesource.com/c/go/+/291230 Trust: Jay Conrod <jayconrod@google.com> Run-TryBot: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com> TryBot-Result: Go Bot <gobot@golang.org>
2021-01-27[dev.regabi] cmd/go: Use GOMAXPROCS to limit default build, compile parallelismDavid Chase
When people want deterministic/single-process builds, they probably assume that GOMAXPROCS=1 will do that. It currently does not, neither for build parallelism nor for compiler internal parallelism. (Current incantation for that is "go build -p=1 -gcflags=all=-c=1 ... ") This CL makes "GOMAXPROCS=1 go build ..." behave like "go build -p=1 -gcflags=all=-c=1 ... " RELNOTE=yes Change-Id: I9cfe50b7deee7334d2f1057b58385f6c98547b9f Reviewed-on: https://go-review.googlesource.com/c/go/+/284695 Trust: David Chase <drchase@google.com> Run-TryBot: David Chase <drchase@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jeremy Faller <jeremy@golang.org>
2021-01-22cmd/go: add documentation for test and xtest fields output by go listMichael Matloob
The TestEmbedPatterns, TestEmbedFiles, XTestEmbedPatterns, and XTestEmbedFiles fields were left out of golang.org/cl/282195 which was supposed to document the embed fields available in the go list output. Add documentation for them in this CL. Fixes #43081 Change-Id: Ifc256c476daec7c0f0e2c41f86b82f958b3e2b1a Reviewed-on: https://go-review.googlesource.com/c/go/+/284258 Trust: Michael Matloob <matloob@golang.org> Run-TryBot: Michael Matloob <matloob@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com>
2021-01-15cmd/go: fix go generate docsRuss Cox
The docs were never updated for the change to the placement of the DO NOT EDIT line. Also, the description of the DO NOT EDIT line interrupted the description of the //go:generate line, which made for some confusing references in the text that followed. Move it lower. Fixes #41196. Change-Id: I6af2a199fa98d45f5ccac7cdf7e9e54257699e61 Reviewed-on: https://go-review.googlesource.com/c/go/+/283633 Trust: Russ Cox <rsc@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2021-01-08cmd/go: revise 'go help' documentation for modulesJay Conrod
Module-related help pages now contain a brief summary and point to the reference documentation at golang.org/ref/mod for details. Help pages for commands like 'go get' still describe the basic usage and summarize flags but don't provide as much background detail. Fixes #41427 Fixes #43419 Change-Id: Icacd38e0f33c352c447cc5a496c99674493abde2 Reviewed-on: https://go-review.googlesource.com/c/go/+/282615 Trust: Jay Conrod <jayconrod@google.com> Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
2021-01-07cmd/go: add documentation for Embed fields in go list outputMichael Matloob
This change the struct fields for EmbedPatterns and EmbedFiles to the Package struct listed in the go list documentation that specifies the fields available to the go list template. Fixes #43081 Change-Id: I89c325a9d6292a6ce484ee588b172d2f84e2333a Reviewed-on: https://go-review.googlesource.com/c/go/+/282195 Trust: Michael Matloob <matloob@golang.org> Run-TryBot: Michael Matloob <matloob@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com> Reviewed-by: Jay Conrod <jayconrod@google.com>
2020-12-23cmd/go: add the Retract field to 'go help mod edit' definition of the GoMod ↵markruler
struct Fixes #43281 Change-Id: Ife26ca174a8818b56aaea9547976d97978478a5f GitHub-Last-Rev: 85a3d30001672b371a58d1c8a2092fc9b937af6f GitHub-Pull-Request: golang/go#43315 Reviewed-on: https://go-review.googlesource.com/c/go/+/279592 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com> Trust: Jay Conrod <jayconrod@google.com>
2020-12-11cmd/go: add documentation for the -overlay flagMichael Matloob
Also add -overlay to the Go 1.16 release notes. For #40700 Fixes #39958 Fixes #42893 Change-Id: Ifd397549e368b255e7b8800986cfa0563a942af5 Reviewed-on: https://go-review.googlesource.com/c/go/+/274714 Trust: Michael Matloob <matloob@golang.org> Run-TryBot: Michael Matloob <matloob@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com> Reviewed-by: Jay Conrod <jayconrod@google.com>
2020-11-18cmd/go: fix retract interval syntax in 'go help mod edit'Jay Conrod
For #24031 Change-Id: I70461431aac24c9465b9bdab082bcc34343a53a8 Reviewed-on: https://go-review.googlesource.com/c/go/+/270557 Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com> Trust: Jay Conrod <jayconrod@google.com>
2020-11-16cmd/go: update 'go help mod init'Jay Conrod
'go help mod init' now mentions that the module path can be derived from the directory within GOPATH. We no longer mention version control, since that's now ignored. Fixes #36775 Change-Id: Ia5559ecb537fccd838eeab84517e76aa01989292 Reviewed-on: https://go-review.googlesource.com/c/go/+/261539 Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Trust: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com> Reviewed-by: Michael Matloob <matloob@golang.org>
2020-11-10cmd/go: introduce the GOVERSION env variableDaniel Martí
This is an extra variable available via 'go env', but not read from the user's environment. It corresponds to the same string that runtime.Version returns, assuming a program is built by the same version of Go. It's similar to the output of 'go version', but without the "go version" prefix nor the "$GOOS/$GOARCH" suffix. The main use case here is tools, which often use 'go env' to query basic information about the installed Go tree. Its version was one missing piece of information, which required an extra call to 'go version' before this change. Fixes #41116. Change-Id: I5c9d8c2ba856c816c9f4c462ba73c907b3441445 Reviewed-on: https://go-review.googlesource.com/c/go/+/265637 Run-TryBot: Daniel Martí <mvdan@mvdan.cc> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com> Reviewed-by: Russ Cox <rsc@golang.org> Trust: Jay Conrod <jayconrod@google.com> Trust: Daniel Martí <mvdan@mvdan.cc>
2020-11-09cmd/go: print deprecation messages for -iJay Conrod
build, install, and test will now print deprecation messages when the -i flag is used. clean will continue to support -i. For #41696 Change-Id: I956c235c487a872c5e6c1395388b4d6cd5ef817a Reviewed-on: https://go-review.googlesource.com/c/go/+/266368 Trust: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com>
2020-11-09cmd/go: print deprecation messages for 'go get' installing executablesJay Conrod
For #40276 Change-Id: I5e631a4c9ce07f23640fb56eb455457bc55072c6 Reviewed-on: https://go-review.googlesource.com/c/go/+/266360 Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Trust: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com>
2020-11-09cmd/go: add GOVCS setting to control version control usageRuss Cox
The go command runs commands like git and hg to download modules. In the past, we have had problems with security bugs in version control systems becoming security bugs in “go get”. The original modules draft design removed use of these commands entirely, saying: > We want to move away from invoking version control tools such as bzr, > fossil, git, hg, and svn to download source code. These fragment the > ecosystem: packages developed using Bazaar or Fossil, for example, are > effectively unavailable to users who cannot or choose not to install > these tools. The version control tools have also been a source of > exciting security problems. It would be good to move them outside the > security perimeter. The removal of these commands was not possible in the end: being able to fetch directly from Git repos is too important, especially for closed source. But the security exposure has not gone away. We remain vulnerable to problems in VCS systems, especially the less scrutinized ones. This change adds a GOVCS setting to let users control which version control systems are allowed by default. It also changes the default allowed version control systems to git and hg for public code and any version control system for private code (import path or module path matched by the GOPRIVATE setting). See the changes in alldocs.go for detailed documentation. See #41730 for proposal and discussion. Fixes #41730. [Replay of CL 266420. See changes from Patch Set 1 for updates to fix a few long tests.] Change-Id: I4fe93804548956c42aea985368b4571bdb220f48 Reviewed-on: https://go-review.googlesource.com/c/go/+/267888 Trust: Russ Cox <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
2020-11-09cmd/go: add /v2 to another require exampleDmitri Shuralyov
This is the same change as in CL 144917, but applied to a nearby line. For #28374. Change-Id: I6e1693d3a14e2517d863d1052a06c1156fc1edd4 Reviewed-on: https://go-review.googlesource.com/c/go/+/263437 Trust: Dmitri Shuralyov <dmitshur@golang.org> Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
2020-11-09cmd/go/internal/modget: fix a typo introduced in CL 263267Bryan C. Mills
Updates #37438 Change-Id: I78f377afd73dad75aed219836725a27fbaa5b69c Reviewed-on: https://go-review.googlesource.com/c/go/+/268117 Trust: Bryan C. Mills <bcmills@google.com> Run-TryBot: Bryan C. Mills <bcmills@google.com> Reviewed-by: Dan Peterson <dpiddy@gmail.com> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org> TryBot-Result: Go Bot <gobot@golang.org>
2020-11-05cmd/go/internal/modget: resolve paths at the requested versionsBryan C. Mills
Previously, we resolved each argument to 'go get' to a package path or module path based on what was in the build list at existing versions, even if the argument specified a different version explicitly. That resulted in bugs like #37438, in which we variously resolved the wrong version or guessed the wrong argument type for what is unambiguously a package argument at the requested version. We were also using a two-step upgrade/downgrade algorithm, which could not only upgrade more that is strictly necessary, but could also unintentionally upgrade *above* the requested versions during the downgrade step. This change instead uses an iterative approach, with an explicit disambiguation step for the (rare) cases where an argument could match the same package path in multiple modules. We use a hook in the package loader to halt package loading as soon as an incorrect version is found — preventing over-resolving — and verify that the result after applying downgrades successfully obtained the requested versions of all modules. Making 'go get' be correct and usable is especially important now that we are defaulting to read-only mode (#40728), for which we are recommending 'go get' more heavily. While I'm in here refactoring, I'm also reworking the API boundary between the modget and modload packages. Previously, the modget package edited the build list directly, and the modload package accepted the edited build list without validation. For lazy loading (#36460), the modload package will need to maintain additional metadata about the requirement graph, so it needs tighter control over the changes to the build list. As of this change, modget no longer invokes MVS directly, but instead goes through the modload package. The resulting API gives clearer reasons in case of updates, which we can use to emit more useful errors. Fixes #37438 Updates #36460 Updates #40728 Change-Id: I596f0020f3795870dec258147e6fc26a3292c93a Reviewed-on: https://go-review.googlesource.com/c/go/+/263267 Trust: Bryan C. Mills <bcmills@google.com> Trust: Jay Conrod <jayconrod@google.com> Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
2020-11-05cmd/go: revert "add GOVCS setting to control version control usage"Dmitri Shuralyov
This reverts CL 266420. Reason for revert: tests aren't passing on linux-{386,amd64}-longtest. Change-Id: Icec47cded795a51ef7569dfb2d93d9211b4fb578 Reviewed-on: https://go-review.googlesource.com/c/go/+/267799 Trust: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
2020-11-05cmd/go: add GOVCS setting to control version control usageRuss Cox
The go command runs commands like git and hg to download modules. In the past, we have had problems with security bugs in version control systems becoming security bugs in “go get”. The original modules draft design removed use of these commands entirely, saying: > We want to move away from invoking version control tools such as bzr, > fossil, git, hg, and svn to download source code. These fragment the > ecosystem: packages developed using Bazaar or Fossil, for example, are > effectively unavailable to users who cannot or choose not to install > these tools. The version control tools have also been a source of > exciting security problems. It would be good to move them outside the > security perimeter. The removal of these commands was not possible in the end: being able to fetch directly from Git repos is too important, especially for closed source. But the security exposure has not gone away. We remain vulnerable to problems in VCS systems, especially the less scrutinized ones. This change adds a GOVCS setting to let users control which version control systems are allowed by default. It also changes the default allowed version control systems to git and hg for public code and any version control system for private code (import path or module path matched by the GOPRIVATE setting). See the changes in alldocs.go for detailed documentation. See #41730 for proposal and discussion. Fixes #41730. Change-Id: I1999ddf7445b36a7572965be5897c7a1ff7f4265 Reviewed-on: https://go-review.googlesource.com/c/go/+/266420 Trust: Russ Cox <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
2020-10-27doc/go1.16: document BuildID in 'go list -export'Daniel Martí
This corresponds to the feature in https://golang.org/cl/263542, since this can be a noteworthy change to people writing tools to inspect Go builds. Also amend the wording to clarify that build IDs are for an entire compiled package, not just their export data or object file. Change-Id: I2eb295492807d5d2997a35e5e2371914cb3ad3a0 Reviewed-on: https://go-review.googlesource.com/c/go/+/264158 Trust: Daniel Martí <mvdan@mvdan.cc> Run-TryBot: Daniel Martí <mvdan@mvdan.cc> Reviewed-by: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com>
2020-10-20cmd/go: add BuildID to list -json -exportDaniel Martí
That is, the following two pieces of shell code are now equivalent: $ go tool buildid $(go list -export -f {{.Export}} strings) v_0VqA6yzwuMg2dn4u57/PXcIR2Pb8Mi9yRdcdkwe $ go list -export -f {{.BuildID}} strings v_0VqA6yzwuMg2dn4u57/PXcIR2Pb8Mi9yRdcdkwe This does not expose any information that wasn't available before, but makes this workflow simpler and faster. In the first example, we have to execute two programs, and 'go tool buildid' has to re-open the export data file to read the build ID. With the new mechanism, 'go list -export' already has the build ID ready, so we can simply print it out. Moreover, when listing lots of related packages like './...', we can now obtain all their build IDs at once. Fixes #37281. Change-Id: I8e2f65a08391b3df1a628c6e06e708b8c8cb7865 Reviewed-on: https://go-review.googlesource.com/c/go/+/263542 Trust: Daniel Martí <mvdan@mvdan.cc> Trust: Bryan C. Mills <bcmills@google.com> Run-TryBot: Daniel Martí <mvdan@mvdan.cc> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com> Reviewed-by: Jay Conrod <jayconrod@google.com>