mirror of
https://github.com/golang/go.git
synced 2026-02-05 18:35:03 +03:00
Compare commits
151 Commits
dev.boring
...
dev.boring
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
349da2d42d | ||
|
|
15da892a49 | ||
|
|
703c8ab7e5 | ||
|
|
d9242f7a8c | ||
|
|
489c148578 | ||
|
|
66c60f076c | ||
|
|
c25b12fb81 | ||
|
|
7d5078e3bf | ||
|
|
1ed3c127da | ||
|
|
cd54600b86 | ||
|
|
76f8b7304d | ||
|
|
8c1d8c8362 | ||
|
|
0117dee7dc | ||
|
|
ba8788ebce | ||
|
|
2678d0c957 | ||
|
|
58facfbe7d | ||
|
|
ed2f33e1a7 | ||
|
|
d13431c37a | ||
|
|
ae2dfcc1c8 | ||
|
|
fc07039e23 | ||
|
|
9ef614f5aa | ||
|
|
b1be664d64 | ||
|
|
77cc1c0def | ||
|
|
8d2935ab7c | ||
|
|
651a8d81ba | ||
|
|
4658e6e324 | ||
|
|
26cdea3acc | ||
|
|
4c69fd51a9 | ||
|
|
909881db03 | ||
|
|
03c2e56f68 | ||
|
|
c15a8e2dbb | ||
|
|
590b53fac9 | ||
|
|
2be03d789d | ||
|
|
65701ad2b4 | ||
|
|
e846f3f2d6 | ||
|
|
a9003376d5 | ||
|
|
0e7138a102 | ||
|
|
6b07de790c | ||
|
|
085c61ae51 | ||
|
|
f7209f904d | ||
|
|
5b45e19a53 | ||
|
|
feec92c423 | ||
|
|
04781d14d2 | ||
|
|
4c5acd4b57 | ||
|
|
78992411de | ||
|
|
2150be1a9b | ||
|
|
9511f6deb6 | ||
|
|
0fdca725c7 | ||
|
|
ed86dfc4e4 | ||
|
|
346b18ee9d | ||
|
|
2116d60993 | ||
|
|
7139e8b024 | ||
|
|
eb75219438 | ||
|
|
4e69fddc64 | ||
|
|
efed283e79 | ||
|
|
88be85f18b | ||
|
|
4ea866a996 | ||
|
|
7dd10d4ce2 | ||
|
|
7f04645b7a | ||
|
|
7d8fa65789 | ||
|
|
1ba25fa288 | ||
|
|
7d70adf3f5 | ||
|
|
ac071634c4 | ||
|
|
6666adc18c | ||
|
|
172559d22b | ||
|
|
cd6e0d7cad | ||
|
|
6a70ee2873 | ||
|
|
1952c65f9a | ||
|
|
4a31565cc0 | ||
|
|
e163319023 | ||
|
|
fbcc30a2c9 | ||
|
|
acb1ce53f9 | ||
|
|
1651426f77 | ||
|
|
17e179e187 | ||
|
|
faa04090f8 | ||
|
|
1b867ce3ef | ||
|
|
539d430efb | ||
|
|
3a34273b8a | ||
|
|
cfad1ff84c | ||
|
|
9de1ac6ac2 | ||
|
|
dbdf055101 | ||
|
|
ab70d7c799 | ||
|
|
1242f430a9 | ||
|
|
59f1a26262 | ||
|
|
ebd1b4d97d | ||
|
|
0aa7f8fd4d | ||
|
|
4223f6eb23 | ||
|
|
dc52cfcd39 | ||
|
|
de690c2ff8 | ||
|
|
48d948963c | ||
|
|
65633fee16 | ||
|
|
e46abcb816 | ||
|
|
61317ef99e | ||
|
|
95e6359f6a | ||
|
|
0f2d0d0694 | ||
|
|
759a9211d4 | ||
|
|
01779135c0 | ||
|
|
66007e5cfc | ||
|
|
3c50f27391 | ||
|
|
ab175939e2 | ||
|
|
f0ee7c6f96 | ||
|
|
b7651e5046 | ||
|
|
4eaf0b7a58 | ||
|
|
4536558f16 | ||
|
|
e347c89598 | ||
|
|
1c05b9b024 | ||
|
|
364f15ff9f | ||
|
|
b954f58e9d | ||
|
|
f1935e2c43 | ||
|
|
5a371e30af | ||
|
|
f58c78a577 | ||
|
|
b212ba6829 | ||
|
|
f9cb33c7c9 | ||
|
|
4a842985bf | ||
|
|
f6f024f120 | ||
|
|
18b970277e | ||
|
|
91aa2f190a | ||
|
|
8bdb0b235a | ||
|
|
3a03ddf735 | ||
|
|
644555d34e | ||
|
|
11b64b428b | ||
|
|
5f1867dc1e | ||
|
|
2ac3bdf378 | ||
|
|
4925e0766f | ||
|
|
b18ba59aaf | ||
|
|
04242ac88f | ||
|
|
c5c1d069da | ||
|
|
abc4f092ac | ||
|
|
e79c297fa8 | ||
|
|
21a4e67ad5 | ||
|
|
328cf2e8b2 | ||
|
|
fcce86c4cf | ||
|
|
36c171763e | ||
|
|
678b07d5e5 | ||
|
|
14c9b1e00b | ||
|
|
c35f8a37d9 | ||
|
|
47a57bc4f0 | ||
|
|
2d97a87287 | ||
|
|
3969694203 | ||
|
|
1dd24caf08 | ||
|
|
ec5170397c | ||
|
|
fdd6dfd507 | ||
|
|
f7b9470992 | ||
|
|
4397d66bdd | ||
|
|
eb5a7b5050 | ||
|
|
ef7be8869c | ||
|
|
72ab3ff68b | ||
|
|
c3ccb77d1e | ||
|
|
c3b47cb598 | ||
|
|
ddfd72f7d1 | ||
|
|
d6f4d9a2be |
@@ -1,11 +1,6 @@
|
||||
---
|
||||
name: Bugs
|
||||
about: The go command, standard library, or anything else
|
||||
title: "affected/package: "
|
||||
---
|
||||
|
||||
<!--
|
||||
Please answer these questions before submitting your issue. Thanks!
|
||||
For questions please use one of our forums: https://github.com/golang/go/wiki/Questions
|
||||
-->
|
||||
|
||||
### What version of Go are you using (`go version`)?
|
||||
@@ -31,7 +26,7 @@ $ go env
|
||||
<!--
|
||||
If possible, provide a recipe for reproducing the error.
|
||||
A complete runnable program is good.
|
||||
A link on go.dev/play is best.
|
||||
A link on play.golang.org is best.
|
||||
-->
|
||||
|
||||
|
||||
@@ -41,5 +36,3 @@ A link on go.dev/play is best.
|
||||
|
||||
|
||||
### What did you see instead?
|
||||
|
||||
|
||||
47
.github/ISSUE_TEMPLATE/01-pkgsite.md
vendored
47
.github/ISSUE_TEMPLATE/01-pkgsite.md
vendored
@@ -1,47 +0,0 @@
|
||||
---
|
||||
name: Pkg.go.dev bugs or feature requests
|
||||
about: Issues or feature requests for the documentation site
|
||||
title: "x/pkgsite: "
|
||||
labels: pkgsite
|
||||
---
|
||||
|
||||
<!--
|
||||
Please answer these questions before submitting your issue. Thanks!
|
||||
-->
|
||||
|
||||
### What is the URL of the page with the issue?
|
||||
|
||||
|
||||
|
||||
### What is your user agent?
|
||||
|
||||
<!--
|
||||
You can find your user agent here:
|
||||
https://www.google.com/search?q=what+is+my+user+agent
|
||||
-->
|
||||
|
||||
|
||||
|
||||
### Screenshot
|
||||
|
||||
<!--
|
||||
Please paste a screenshot of the page.
|
||||
-->
|
||||
|
||||
|
||||
|
||||
### What did you do?
|
||||
|
||||
<!--
|
||||
If possible, provide a recipe for reproducing the error.
|
||||
-->
|
||||
|
||||
|
||||
|
||||
### What did you expect to see?
|
||||
|
||||
|
||||
|
||||
### What did you see instead?
|
||||
|
||||
|
||||
39
.github/ISSUE_TEMPLATE/02-pkgsite-removal.md
vendored
39
.github/ISSUE_TEMPLATE/02-pkgsite-removal.md
vendored
@@ -1,39 +0,0 @@
|
||||
---
|
||||
name: Pkg.go.dev package removal request
|
||||
about: Request a package be removed from the documentation site (pkg.go.dev)
|
||||
title: "x/pkgsite: package removal request for [type path here]"
|
||||
labels: pkgsite
|
||||
---
|
||||
|
||||
<!--
|
||||
Please answer these questions before submitting your issue. Thanks!
|
||||
-->
|
||||
|
||||
### What is the path of the package that you would like to have removed?
|
||||
|
||||
<!---
|
||||
We can remove packages with a shared path prefix.
|
||||
For example, a request for "github.com/author" would remove all pkg.go.dev pages with that package path prefix.
|
||||
--->
|
||||
|
||||
|
||||
|
||||
### Are you the owner of this package?
|
||||
|
||||
<!---
|
||||
Only the package owners can request to have their packages removed from pkg.go.dev.
|
||||
--->
|
||||
|
||||
|
||||
|
||||
### What is the reason that you could not retract this package instead?
|
||||
|
||||
<!---
|
||||
If you would like to have your module removed from pkg.go.dev, we recommend that you retract them, so that they can be removed from the go command and proxy.golang.org as well.
|
||||
|
||||
Retracting a module version involves adding a retract directive to your go.mod file and publishing a new version. For example: https://github.com/jba/retract-demo/blob/main/go.mod#L5-L8
|
||||
|
||||
See https://pkg.go.dev/about#removing-a-package for additional tips on retractions.
|
||||
--->
|
||||
|
||||
|
||||
61
.github/ISSUE_TEMPLATE/03-gopls.md
vendored
61
.github/ISSUE_TEMPLATE/03-gopls.md
vendored
@@ -1,61 +0,0 @@
|
||||
---
|
||||
name: Gopls bugs or feature requests
|
||||
about: Issues or feature requests for the Go language server (gopls)
|
||||
title: "x/tools/gopls: "
|
||||
labels: gopls Tools
|
||||
---
|
||||
|
||||
<!--
|
||||
Please answer these questions before submitting your issue. Thanks!
|
||||
-->
|
||||
|
||||
### gopls version
|
||||
|
||||
<!--
|
||||
Output of `gopls -v version` on the command line
|
||||
-->
|
||||
|
||||
|
||||
|
||||
### go env
|
||||
|
||||
<!--
|
||||
Output of `go env` on the command line in your workspace directory
|
||||
-->
|
||||
|
||||
|
||||
### What did you do?
|
||||
|
||||
<!--
|
||||
If possible, provide a recipe for reproducing the error.
|
||||
A complete runnable program is good.
|
||||
A link on go.dev/play is better.
|
||||
A failing unit test is the best.
|
||||
-->
|
||||
|
||||
|
||||
|
||||
### What did you expect to see?
|
||||
|
||||
|
||||
|
||||
### What did you see instead?
|
||||
|
||||
|
||||
|
||||
### Editor and settings
|
||||
|
||||
<!--
|
||||
Your editor and any settings you have configured (for example, your VSCode settings.json file)
|
||||
-->
|
||||
|
||||
|
||||
|
||||
### Logs
|
||||
|
||||
<!--
|
||||
If possible please include gopls logs. Instructions for capturing them can be found here:
|
||||
https://github.com/golang/tools/blob/master/gopls/doc/troubleshooting.md#capture-logs
|
||||
-->
|
||||
|
||||
|
||||
13
.github/ISSUE_TEMPLATE/10-proposal.md
vendored
13
.github/ISSUE_TEMPLATE/10-proposal.md
vendored
@@ -1,13 +0,0 @@
|
||||
---
|
||||
name: Proposals
|
||||
about: New external API or other notable changes
|
||||
title: "proposal: affected/package: "
|
||||
labels: Proposal
|
||||
---
|
||||
|
||||
<!--
|
||||
Our proposal process is documented here:
|
||||
https://go.dev/s/proposal-process
|
||||
-->
|
||||
|
||||
|
||||
52
.github/ISSUE_TEMPLATE/11-language-change.md
vendored
52
.github/ISSUE_TEMPLATE/11-language-change.md
vendored
@@ -1,52 +0,0 @@
|
||||
---
|
||||
name: Language Change Proposals
|
||||
about: Changes to the language
|
||||
title: "proposal: Go 2: "
|
||||
labels: Proposal Go2 LanguageChange
|
||||
---
|
||||
|
||||
<!--
|
||||
Our process for evaluating language changes can be found here:
|
||||
https://go.googlesource.com/proposal/+/refs/heads/master#language-changes
|
||||
-->
|
||||
|
||||
### Author background
|
||||
|
||||
- **Would you consider yourself a novice, intermediate, or experienced Go programmer?**
|
||||
- **What other languages do you have experience with?**
|
||||
|
||||
### Related proposals
|
||||
|
||||
- **Has this idea, or one like it, been proposed before?**
|
||||
- **If so, how does this proposal differ?**
|
||||
- **Does this affect error handling?**
|
||||
- **If so, how does this differ from previous error handling proposals?**
|
||||
- **Is this about generics?**
|
||||
- **If so, how does this relate to the accepted design and other generics proposals?**
|
||||
|
||||
### Proposal
|
||||
|
||||
- **What is the proposed change?**
|
||||
- **Who does this proposal help, and why?**
|
||||
- **Please describe as precisely as possible the change to the language.**
|
||||
- **What would change in the language spec?**
|
||||
- **Please also describe the change informally, as in a class teaching Go.**
|
||||
- **Is this change backward compatible?**
|
||||
- Breaking the Go 1 compatibility guarantee is a large cost and requires a large benefit.
|
||||
Show example code before and after the change.
|
||||
- **Before**
|
||||
- **After**
|
||||
- **Orthogonality: how does this change interact or overlap with existing features?**
|
||||
- **Is the goal of this change a performance improvement?**
|
||||
- **If so, what quantifiable improvement should we expect?**
|
||||
- **How would we measure it?**
|
||||
|
||||
### Costs
|
||||
|
||||
- **Would this change make Go easier or harder to learn, and why?**
|
||||
- **What is the cost of this proposal? (Every language change has a cost).**
|
||||
- **How many tools (such as vet, gopls, gofmt, goimports, etc.) would be affected?**
|
||||
- **What is the compile time cost?**
|
||||
- **What is the run time cost?**
|
||||
- **Can you describe a possible implementation?**
|
||||
- **Do you have a prototype? (This is not required.)**
|
||||
5
.github/ISSUE_TEMPLATE/config.yml
vendored
5
.github/ISSUE_TEMPLATE/config.yml
vendored
@@ -1,5 +0,0 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Questions
|
||||
about: Please use one of the forums for questions or general discussions
|
||||
url: https://go.dev/wiki/Questions
|
||||
2
.github/SUPPORT.md
vendored
2
.github/SUPPORT.md
vendored
@@ -11,4 +11,4 @@ For asking questions, see:
|
||||
|
||||
* [Stack Overflow](https://stackoverflow.com/questions/tagged/go) with questions tagged "go"
|
||||
|
||||
* **IRC** channel #go-nuts on Libera
|
||||
* **IRC** channel #go-nuts on Freenode
|
||||
|
||||
13
AUTHORS
13
AUTHORS
@@ -202,14 +202,13 @@ Ben Burkert <ben@benburkert.com>
|
||||
Ben Haines <bhainesva@gmail.com>
|
||||
Ben Lubar <ben.lubar@gmail.com>
|
||||
Ben Olive <sionide21@gmail.com>
|
||||
Ben Shi <powerman1st@163.com> <ben.shi@streamcomputing.com>
|
||||
Ben Shi <powerman1st@163.com>
|
||||
Benjamin Black <b@b3k.us>
|
||||
Benjamin Cable <cable.benjamin@gmail.com>
|
||||
Benjamin Hsieh <tanookiben@users.noreply.github.com>
|
||||
Benny Siegert <bsiegert@gmail.com>
|
||||
Benoit Sigoure <tsunanet@gmail.com>
|
||||
Berengar Lehr <berengar.lehr@gmx.de>
|
||||
Bharath Kumar Uppala <uppala.bharath@gmail.com>
|
||||
Bill Zissimopoulos <billziss@navimatics.com>
|
||||
Billie Harold Cleek <bhcleek@gmail.com>
|
||||
Bjorn Tillenius <bjorn@tillenius.me>
|
||||
@@ -263,8 +262,6 @@ Casey Callendrello <squeed@gmail.com>
|
||||
Casey Marshall <casey.marshall@gmail.com>
|
||||
Cezar Sá Espinola <cezarsa@gmail.com>
|
||||
ChaiShushan <chaishushan@gmail.com>
|
||||
Changkun Ou <hi@changkun.de> <hi@changkun.us>
|
||||
Chaoqun Han <hanssccv@gmail.com>
|
||||
Charles Fenwick Elliott <Charles@FenwickElliott.io>
|
||||
Charles L. Dorian <cldorian@gmail.com>
|
||||
Charles Lee <zombie.fml@gmail.com>
|
||||
@@ -570,7 +567,6 @@ Hootsuite Inc.
|
||||
Hsin-Ho Yeh <yhh92u@gmail.com>
|
||||
Hu Keping <hukeping@huawei.com>
|
||||
Hugues Bruant <hugues.bruant@gmail.com>
|
||||
HyperConnect Inc.
|
||||
Ian Gudger <ian@loosescre.ws>
|
||||
Ian Kent <iankent85@gmail.com>
|
||||
IBM
|
||||
@@ -821,7 +817,6 @@ Lehner Florian <dev@der-flo.net>
|
||||
Leigh McCulloch <leighmcc@gmail.com>
|
||||
Leo Antunes <leo@costela.net>
|
||||
Leon Klingele <git@leonklingele.de>
|
||||
Leonard Wang <wangdeyu0907@gmail.com> <wangdeyu@golangcn.org>
|
||||
Leonel Quinteros <leonel.quinteros@gmail.com>
|
||||
Lev Shamardin <shamardin@gmail.com>
|
||||
Lewin Bormann <lewin.bormann@gmail.com>
|
||||
@@ -829,7 +824,6 @@ Liberty Fund Inc
|
||||
Linaro Limited
|
||||
Lion Yang <lion@aosc.xyz>
|
||||
Lloyd Dewolf <foolswisdom@gmail.com>
|
||||
Loongson Technology Corporation Limited
|
||||
Lorenzo Masini <rugginoso@develer.com>
|
||||
Lorenzo Stoakes <lstoakes@gmail.com>
|
||||
Luan Santos <cfcluan@gmail.com>
|
||||
@@ -1021,7 +1015,6 @@ Nathan Youngman <git@nathany.com>
|
||||
Nathaniel Cook <nvcook42@gmail.com>
|
||||
Naveen Kumar Sangi <naveenkumarsangi@protonmail.com>
|
||||
Neelesh Chandola <neelesh.c98@gmail.com>
|
||||
Neil Alexander <neilalexander@neilalexander.dev>
|
||||
Neil Lyons <nwjlyons@googlemail.com>
|
||||
Netflix, Inc.
|
||||
Neuman Vong <neuman.vong@gmail.com>
|
||||
@@ -1149,7 +1142,6 @@ Piers <google@hellopiers.pro>
|
||||
Pieter Droogendijk <pieter@binky.org.uk>
|
||||
Pietro Gagliardi <pietro10@mac.com>
|
||||
Piyush Mishra <piyush@codeitout.com>
|
||||
PlanetScale, Inc.
|
||||
Platform.sh
|
||||
Pontus Leitzler <leitzler@gmail.com>
|
||||
Prasanga Siripala <pj@pjebs.com.au>
|
||||
@@ -1435,7 +1427,6 @@ Wei Guangjing <vcc.163@gmail.com>
|
||||
Weichao Tang <tevic.tt@gmail.com>
|
||||
Weixie Cui <cuiweixie@gmail.com> <523516579@qq.com>
|
||||
Wembley G. Leach, Jr <wembley.gl@gmail.com>
|
||||
Wen Yang <yangwen.yw@gmail.com>
|
||||
Will Faught <will.faught@gmail.com>
|
||||
Will Storey <will@summercat.com>
|
||||
Willem van der Schyff <willemvds@gmail.com>
|
||||
@@ -1486,10 +1477,8 @@ Zemanta d.o.o.
|
||||
Zev Goldstein <zev.goldstein@gmail.com>
|
||||
Zheng Dayu <davidzheng23@gmail.com>
|
||||
Zhongtao Chen <chenzhongtao@126.com>
|
||||
Zhou Guangyuan <zhouguangyuan.xian@gmail.com>
|
||||
Zhou Peng <p@ctriple.cn>
|
||||
Ziad Hatahet <hatahet@gmail.com>
|
||||
Zizhao Zhang <btw515wolf2@gmail.com>
|
||||
Zorion Arrizabalaga <zorionk@gmail.com>
|
||||
Максим Федосеев <max.faceless.frei@gmail.com>
|
||||
Роман Хавроненко <hagen1778@gmail.com>
|
||||
|
||||
113
CONTRIBUTORS
113
CONTRIBUTORS
@@ -120,7 +120,6 @@ Alex Kohler <alexjohnkohler@gmail.com>
|
||||
Alex Myasoedov <msoedov@gmail.com>
|
||||
Alex Opie <amtopie@gmail.com>
|
||||
Alex Plugaru <alex@plugaru.org> <alexandru.plugaru@gmail.com>
|
||||
Alex Schade <39062967+aschade92@users.noreply.github.com>
|
||||
Alex Schroeder <alex@gnu.org>
|
||||
Alex Sergeyev <abc@alexsergeyev.com>
|
||||
Alex Tokarev <aleksator@gmail.com>
|
||||
@@ -136,7 +135,6 @@ Alexander Klauer <Alexander.Klauer@googlemail.com>
|
||||
Alexander Kucherenko <alxkchr@gmail.com>
|
||||
Alexander Larsson <alexander.larsson@gmail.com>
|
||||
Alexander Lourier <aml@rulezz.ru>
|
||||
Alexander Melentyev <alexander@melentyev.org>
|
||||
Alexander Menzhinsky <amenzhinsky@gmail.com>
|
||||
Alexander Morozov <lk4d4math@gmail.com>
|
||||
Alexander Neumann <alexander@bumpern.de>
|
||||
@@ -147,7 +145,6 @@ Alexander Polcyn <apolcyn@google.com>
|
||||
Alexander Rakoczy <alex@golang.org>
|
||||
Alexander Reece <awreece@gmail.com>
|
||||
Alexander Surma <surma@surmair.de>
|
||||
Alexander Yastrebov <yastrebov.alex@gmail.com>
|
||||
Alexander Zhavnerchik <alex.vizor@gmail.com>
|
||||
Alexander Zillion <alex@alexzillion.com>
|
||||
Alexander Zolotov <goldifit@gmail.com>
|
||||
@@ -182,7 +179,6 @@ Alok Menghrajani <alok.menghrajani@gmail.com>
|
||||
Alwin Doss <alwindoss84@gmail.com>
|
||||
Aman Gupta <aman@tmm1.net>
|
||||
Amarjeet Anand <amarjeetanandsingh@gmail.com>
|
||||
Amelia Downs <adowns@vmware.com>
|
||||
Amir Mohammad Saied <amir@gluegadget.com>
|
||||
Amit Kumar <mittalmailbox@gmail.com>
|
||||
Amr Mohammed <merodiro@gmail.com>
|
||||
@@ -195,7 +191,6 @@ Anatol Pomozov <anatol.pomozov@gmail.com>
|
||||
Anders Pearson <anders@columbia.edu>
|
||||
Anderson Queiroz <contato@andersonq.eti.br>
|
||||
André Carvalho <asantostc@gmail.com>
|
||||
Andre Marianiello <andremarianiello@users.noreply.github.com>
|
||||
André Martins <aanm90@gmail.com>
|
||||
Andre Nathan <andrenth@gmail.com>
|
||||
Andrea Nodari <andrea.nodari91@gmail.com>
|
||||
@@ -226,7 +221,6 @@ Andrew Gerrand <adg@golang.org>
|
||||
Andrew Harding <andrew@spacemonkey.com>
|
||||
Andrew Jackura <ajackura@google.com>
|
||||
Andrew Kemm <andrewkemm@gmail.com>
|
||||
Andrew LeFevre <capnspacehook@gmail.com>
|
||||
Andrew Louis <alouis@digitalocean.com>
|
||||
Andrew Lutomirski <andy@luto.us>
|
||||
Andrew Medvedev <andrew.y.medvedev@gmail.com>
|
||||
@@ -240,7 +234,6 @@ Andrew Stormont <astormont@racktopsystems.com>
|
||||
Andrew Stribblehill <ads@wompom.org>
|
||||
Andrew Szeto <andrew@jabagawee.com>
|
||||
Andrew Todd <andrew.todd@wework.com>
|
||||
Andrew Wansink <wansink@uber.com>
|
||||
Andrew Werner <andrew@upthere.com> <awerner32@gmail.com>
|
||||
Andrew Wilkins <axwalk@gmail.com>
|
||||
Andrew Williams <williams.andrew@gmail.com>
|
||||
@@ -290,7 +283,6 @@ Antonio Bibiano <antbbn@gmail.com>
|
||||
Antonio Garcia <garcia.olais@gmail.com>
|
||||
Antonio Huete Jimenez <tuxillo@quantumachine.net>
|
||||
Antonio Murdaca <runcom@redhat.com>
|
||||
Antonio Ojea <antonio.ojea.garcia@gmail.com>
|
||||
Antonio Troina <thoeni@gmail.com>
|
||||
Anze Kolar <me@akolar.com>
|
||||
Aofei Sheng <aofei@aofeisheng.com>
|
||||
@@ -298,7 +290,6 @@ Apisak Darakananda <pongad@gmail.com>
|
||||
Aram Hăvărneanu <aram@mgk.ro>
|
||||
Araragi Hokuto <kanseihonbucho@protonmail.com>
|
||||
Arash Bina <arash@arash.io>
|
||||
Archana Ravindar <aravind5@in.ibm.com>
|
||||
Arda Güçlü <ardaguclu@gmail.com>
|
||||
Areski Belaid <areski@gmail.com>
|
||||
Ariel Mashraki <ariel@mashraki.co.il>
|
||||
@@ -308,7 +299,6 @@ Arnaud Ysmal <arnaud.ysmal@gmail.com>
|
||||
Arne Hormann <arnehormann@gmail.com>
|
||||
Arnout Engelen <arnout@bzzt.net>
|
||||
Aron Nopanen <aron.nopanen@gmail.com>
|
||||
Arran Walker <arran.walker@fiveturns.org>
|
||||
Artem Alekseev <artem.alekseev@intel.com>
|
||||
Artem Khvastunov <artem.khvastunov@jetbrains.com>
|
||||
Artem Kolin <artemkaxboy@gmail.com>
|
||||
@@ -347,7 +337,6 @@ Balaram Makam <bmakam.qdt@qualcommdatacenter.com>
|
||||
Balazs Lecz <leczb@google.com>
|
||||
Baokun Lee <nototon@gmail.com> <bk@golangcn.org>
|
||||
Barnaby Keene <accounts@southcla.ws>
|
||||
Bartłomiej Klimczak <bartlomiej.klimczak88@gmail.com>
|
||||
Bartosz Grzybowski <melkorm@gmail.com>
|
||||
Bartosz Oler <brtsz@google.com>
|
||||
Bassam Ojeil <bojeil@google.com>
|
||||
@@ -365,7 +354,7 @@ Ben Lubar <ben.lubar@gmail.com>
|
||||
Ben Lynn <benlynn@gmail.com>
|
||||
Ben Olive <sionide21@gmail.com>
|
||||
Ben Schwartz <bemasc@google.com>
|
||||
Ben Shi <powerman1st@163.com> <ben.shi@streamcomputing.com>
|
||||
Ben Shi <powerman1st@163.com>
|
||||
Ben Toews <mastahyeti@gmail.com>
|
||||
Benjamin Barenblat <bbaren@google.com>
|
||||
Benjamin Black <b@b3k.us>
|
||||
@@ -379,8 +368,6 @@ Benny Siegert <bsiegert@gmail.com>
|
||||
Benoit Sigoure <tsunanet@gmail.com>
|
||||
Berengar Lehr <Berengar.Lehr@gmx.de>
|
||||
Berkant Ipek <41230766+0xbkt@users.noreply.github.com>
|
||||
Beth Brown <ecbrown@google.com>
|
||||
Bharath Kumar Uppala <uppala.bharath@gmail.com>
|
||||
Bharath Thiruveedula <tbharath91@gmail.com>
|
||||
Bhavin Gandhi <bhavin7392@gmail.com>
|
||||
Bill Neubauer <wcn@golang.org> <wcn@google.com> <bill.neubauer@gmail.com>
|
||||
@@ -442,7 +429,6 @@ Brian Ketelsen <bketelsen@gmail.com>
|
||||
Brian Slesinsky <skybrian@google.com>
|
||||
Brian Smith <ohohvi@gmail.com>
|
||||
Brian Starke <brian.starke@gmail.com>
|
||||
Bruce Huang <helbingxxx@gmail.com>
|
||||
Bryan Alexander <Kozical@msn.com>
|
||||
Bryan Boreham <bjboreham@gmail.com>
|
||||
Bryan C. Mills <bcmills@google.com>
|
||||
@@ -451,7 +437,6 @@ Bryan Ford <brynosaurus@gmail.com>
|
||||
Bryan Heden <b.heden@gmail.com>
|
||||
Bulat Gaifullin <gaifullinbf@gmail.com>
|
||||
Burak Guven <bguven@gmail.com>
|
||||
Byoungchan Lee <daniel.l@hpcnt.com>
|
||||
Caine Tighe <arctanofyourface@gmail.com>
|
||||
Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
|
||||
Caleb Martinez <accounts@calebmartinez.com>
|
||||
@@ -487,30 +472,25 @@ Cedric Staub <cs@squareup.com>
|
||||
Cezar Sá Espinola <cezarsa@gmail.com>
|
||||
Chad Rosier <mrosier.qdt@qualcommdatacenter.com>
|
||||
ChaiShushan <chaishushan@gmail.com>
|
||||
Changkun Ou <hi@changkun.de> <hi@changkun.us>
|
||||
Changkun Ou <hi@changkun.us>
|
||||
Channing Kimble-Brown <channing@golang.org>
|
||||
Chao Xu <xuchao@google.com>
|
||||
Chaoqun Han <hanssccv@gmail.com>
|
||||
Charles Fenwick Elliott <Charles@FenwickElliott.io>
|
||||
Charles Kenney <charlesc.kenney@gmail.com>
|
||||
Charles L. Dorian <cldorian@gmail.com>
|
||||
Charles Lee <zombie.fml@gmail.com>
|
||||
Charles Weill <weill@google.com>
|
||||
Charlie Getzen <charlie@bolt.com>
|
||||
Charlie Moog <moogcharlie@gmail.com>
|
||||
Charlotte Brandhorst-Satzkorn <catzkorn@gmail.com>
|
||||
Chauncy Cullitan <chauncyc@google.com>
|
||||
Chen Zhidong <njutczd@gmail.com>
|
||||
Chen Zhihan <energiehund@gmail.com>
|
||||
Cheng Wang <wangchengiscool@gmail.com>
|
||||
Cherry Mui <cherryyz@google.com>
|
||||
Chew Choon Keat <choonkeat@gmail.com>
|
||||
Chia-Chi Hsu <wuchi5457@gmail.com>
|
||||
Chiawen Chen <golopot@gmail.com>
|
||||
Chirag Sukhala <cchirag77@gmail.com>
|
||||
Cholerae Hu <choleraehyq@gmail.com>
|
||||
Chotepud Teo <AlexRouSg@users.noreply.github.com>
|
||||
Chressie Himpel <chressie@google.com>
|
||||
Chris Ball <chris@printf.net>
|
||||
Chris Biscardi <chris@christopherbiscardi.com>
|
||||
Chris Broadfoot <cbro@golang.org>
|
||||
@@ -588,7 +568,6 @@ Cuong Manh Le <cuong@orijtech.com>
|
||||
Curtis La Graff <curtis@lagraff.me>
|
||||
Cyrill Schumacher <cyrill@schumacher.fm>
|
||||
Dai Jie <gzdaijie@gmail.com>
|
||||
Dai Wentao <dwt136@gmail.com>
|
||||
Daisuke Fujita <dtanshi45@gmail.com>
|
||||
Daisuke Suzuki <daisuzu@gmail.com>
|
||||
Daker Fernandes Pinheiro <daker.fernandes.pinheiro@intel.com>
|
||||
@@ -622,7 +601,6 @@ Daniel Langner <s8572327@gmail.com>
|
||||
Daniel Lidén <daniel.liden.87@gmail.com>
|
||||
Daniel Lublin <daniel@lublin.se>
|
||||
Daniel Mangum <georgedanielmangum@gmail.com>
|
||||
Daniel Marshall <daniel.marshall2@ibm.com>
|
||||
Daniel Martí <mvdan@mvdan.cc>
|
||||
Daniel McCarney <cpu@letsencrypt.org>
|
||||
Daniel Morsing <daniel.morsing@gmail.com>
|
||||
@@ -747,7 +725,6 @@ Dmitry Mottl <dmitry.mottl@gmail.com>
|
||||
Dmitry Neverov <dmitry.neverov@gmail.com>
|
||||
Dmitry Savintsev <dsavints@gmail.com>
|
||||
Dmitry Yakunin <nonamezeil@gmail.com>
|
||||
Dmytro Shynkevych <dm.shynk@gmail.com>
|
||||
Doga Fincan <doga@icloud.com>
|
||||
Domas Tamašauskas <puerdomus@gmail.com>
|
||||
Domen Ipavec <domen@ipavec.net>
|
||||
@@ -772,7 +749,6 @@ Dustin Herbison <djherbis@gmail.com>
|
||||
Dustin Long <dustmop@gmail.com>
|
||||
Dustin Sallings <dsallings@gmail.com>
|
||||
Dustin Shields-Cloues <dcloues@gmail.com>
|
||||
Dustin Spicuzza <dustin.spicuzza@gmail.com>
|
||||
Dvir Volk <dvir@everything.me> <dvirsky@gmail.com>
|
||||
Dylan Waits <dylan@waits.io>
|
||||
Ed Schouten <ed@nuxi.nl>
|
||||
@@ -832,11 +808,9 @@ Erin Masatsugu <erin.masatsugu@gmail.com>
|
||||
Ernest Chiang <ernest_chiang@htc.com>
|
||||
Erwin Oegema <blablaechthema@hotmail.com>
|
||||
Esko Luontola <esko.luontola@gmail.com>
|
||||
Ethan Anderson <eanderson@atlassian.com>
|
||||
Ethan Burns <eaburns@google.com>
|
||||
Ethan Hur <ethan0311@gmail.com>
|
||||
Ethan Miller <eamiller@us.ibm.com>
|
||||
Ethan Reesor <ethan.reesor@gmail.com>
|
||||
Euan Kemp <euank@euank.com>
|
||||
Eugene Formanenko <mo4islona@gmail.com>
|
||||
Eugene Kalinin <e.v.kalinin@gmail.com>
|
||||
@@ -855,10 +829,8 @@ Evgeniy Polyakov <zbr@ioremap.net>
|
||||
Ewan Chou <coocood@gmail.com>
|
||||
Ewan Valentine <ewan.valentine89@gmail.com>
|
||||
Eyal Posener <posener@gmail.com>
|
||||
F. Talha Altınel <talhaaltinel@hotmail.com>
|
||||
Fabian Wickborn <fabian@wickborn.net>
|
||||
Fabian Zaremba <fabian@youremail.eu>
|
||||
Fabio Falzoi <fabio.falzoi84@gmail.com>
|
||||
Fabrizio Milo <mistobaan@gmail.com>
|
||||
Faiyaz Ahmed <ahmedf@vmware.com>
|
||||
Fan Hongjian <fan.howard@gmail.com>
|
||||
@@ -887,25 +859,21 @@ Firmansyah Adiputra <frm.adiputra@gmail.com>
|
||||
Florian Forster <octo@google.com>
|
||||
Florian Uekermann <florian@uekermann-online.de> <f1@uekermann-online.de>
|
||||
Florian Weimer <fw@deneb.enyo.de>
|
||||
Florin Papa <fpapa@google.com>
|
||||
Florin Patan <florinpatan@gmail.com>
|
||||
Folke Behrens <folke@google.com>
|
||||
Ford Hurley <ford.hurley@gmail.com>
|
||||
Forest Johnson <forest.n.johnson@gmail.com>
|
||||
Francesc Campoy <campoy@golang.org>
|
||||
Francesco Guardiani <francescoguard@gmail.com>
|
||||
Francesco Renzi <rentziass@gmail.com>
|
||||
Francisco Claude <fclaude@recoded.cl>
|
||||
Francisco Rojas <francisco.rojas.gallegos@gmail.com>
|
||||
Francisco Souza <franciscossouza@gmail.com>
|
||||
Frank Chiarulli Jr <frank@frankchiarulli.com>
|
||||
Frank Schroeder <frank.schroeder@gmail.com>
|
||||
Frank Somers <fsomers@arista.com>
|
||||
Frederic Guillot <frederic.guillot@gmail.com>
|
||||
Frederick Kelly Mayle III <frederickmayle@gmail.com>
|
||||
Frederik Ring <frederik.ring@gmail.com>
|
||||
Frederik Zipp <fzipp@gmx.de>
|
||||
Frediano Ziglio <freddy77@gmail.com>
|
||||
Fredrik Enestad <fredrik.enestad@soundtrackyourbrand.com>
|
||||
Fredrik Forsmo <fredrik.forsmo@gmail.com>
|
||||
Fredrik Wallgren <fredrik.wallgren@gmail.com>
|
||||
@@ -944,7 +912,6 @@ Geon Kim <geon0250@gmail.com>
|
||||
Georg Reinke <guelfey@gmail.com>
|
||||
George Gkirtsou <ggirtsou@gmail.com>
|
||||
George Hartzell <hartzell@alerce.com>
|
||||
George Looshch <looshch@loosh.ch>
|
||||
George Shammas <george@shamm.as> <georgyo@gmail.com>
|
||||
George Tsilias <tsiliasg@gmail.com>
|
||||
Gerasimos (Makis) Maropoulos <kataras2006@hotmail.com>
|
||||
@@ -985,27 +952,19 @@ GitHub User @fatedier (7346661) <fatedier@gmail.com>
|
||||
GitHub User @frennkie (6499251) <mail@rhab.de>
|
||||
GitHub User @geedchin (11672310) <geedchin@gmail.com>
|
||||
GitHub User @GrigoriyMikhalkin (3637857) <grigoriymikhalkin@gmail.com>
|
||||
GitHub User @Gusted (25481501) <williamzijl7@hotmail.com>
|
||||
GitHub User @hengwu0 (41297446) <41297446+hengwu0@users.noreply.github.com>
|
||||
GitHub User @hitzhangjie (3725760) <hit.zhangjie@gmail.com>
|
||||
GitHub User @hkhere (33268704) <33268704+hkhere@users.noreply.github.com>
|
||||
GitHub User @hopehook (7326168) <hopehook.com@gmail.com>
|
||||
GitHub User @hqpko (13887251) <whaibin01@hotmail.com>
|
||||
GitHub User @Illirgway (5428603) <illirgway@gmail.com>
|
||||
GitHub User @itchyny (375258) <itchyny@hatena.ne.jp>
|
||||
GitHub User @jinmiaoluo (39730824) <jinmiaoluo@icloud.com>
|
||||
GitHub User @jopbrown (6345470) <msshane2008@gmail.com>
|
||||
GitHub User @kazyshr (30496953) <kazyshr0301@gmail.com>
|
||||
GitHub User @kc1212 (1093806) <kc1212@users.noreply.github.com>
|
||||
GitHub User @komisan19 (18901496) <komiyama6219@gmail.com>
|
||||
GitHub User @korzhao (64203902) <korzhao95@gmail.com>
|
||||
GitHub User @Kropekk (13366453) <kamilkropiewnicki@gmail.com>
|
||||
GitHub User @lgbgbl (65756378) <lgbgbl@qq.com>
|
||||
GitHub User @lhl2617 (33488131) <l.h.lee2617@gmail.com>
|
||||
GitHub User @linguohua (3434367) <lghchinaidea@gmail.com>
|
||||
GitHub User @lloydchang (1329685) <lloydchang@gmail.com>
|
||||
GitHub User @LotusFenn (13775899) <fenn.lotus@gmail.com>
|
||||
GitHub User @luochuanhang (96416201) <chuanhangluo@gmail.com>
|
||||
GitHub User @ly303550688 (11519839) <yang.liu636@gmail.com>
|
||||
GitHub User @madiganz (18340029) <zacharywmadigan@gmail.com>
|
||||
GitHub User @maltalex (10195391) <code@bit48.net>
|
||||
@@ -1015,7 +974,6 @@ GitHub User @micnncim (21333876) <micnncim@gmail.com>
|
||||
GitHub User @mkishere (224617) <224617+mkishere@users.noreply.github.com>
|
||||
GitHub User @nu50218 (40682920) <nu_ll@icloud.com>
|
||||
GitHub User @OlgaVlPetrova (44112727) <OVPpetrova@gmail.com>
|
||||
GitHub User @pierwill (19642016) <pierwill@users.noreply.github.com>
|
||||
GitHub User @pityonline (438222) <pityonline@gmail.com>
|
||||
GitHub User @po3rin (29445112) <abctail30@gmail.com>
|
||||
GitHub User @pokutuna (57545) <popopopopokutuna@gmail.com>
|
||||
@@ -1023,18 +981,13 @@ GitHub User @povsister (11040951) <pov@mahou-shoujo.moe>
|
||||
GitHub User @pytimer (17105586) <lixin20101023@gmail.com>
|
||||
GitHub User @qcrao (7698088) <qcrao91@gmail.com>
|
||||
GitHub User @ramenjuniti (32011829) <ramenjuniti@gmail.com>
|
||||
GitHub User @renthraysk (30576707) <renthraysk@gmail.com>
|
||||
GitHub User @roudkerk (52280478) <roudkerk@google.com>
|
||||
GitHub User @saitarunreddy (21041941) <saitarunreddypalla@gmail.com>
|
||||
GitHub User @SataQiu (9354727) <shidaqiu2018@gmail.com>
|
||||
GitHub User @seifchen (23326132) <chenxuefeng1207@gmail.com>
|
||||
GitHub User @shogo-ma (9860598) <Choroma194@gmail.com>
|
||||
GitHub User @sivchari (55221074) <shibuuuu5@gmail.com>
|
||||
GitHub User @skanehira (7888591) <sho19921005@gmail.com>
|
||||
GitHub User @soolaugust (10558124) <soolaugust@gmail.com>
|
||||
GitHub User @surechen (7249331) <surechen17@gmail.com>
|
||||
GitHub User @syumai (6882878) <syumai@gmail.com>
|
||||
GitHub User @tangxi666 (48145175) <tx1275044634@gmail.com>
|
||||
GitHub User @tatsumack (4510569) <tatsu.mack@gmail.com>
|
||||
GitHub User @tell-k (26263) <ffk2005@gmail.com>
|
||||
GitHub User @tennashi (10219626) <tennashio@gmail.com>
|
||||
@@ -1044,7 +997,6 @@ GitHub User @unbyte (5772358) <i@shangyes.net>
|
||||
GitHub User @uropek (39370426) <uropek@gmail.com>
|
||||
GitHub User @utkarsh-extc (53217283) <utkarsh.extc@gmail.com>
|
||||
GitHub User @witchard (4994659) <witchard@hotmail.co.uk>
|
||||
GitHub User @wmdngngng (22067700) <wangmingdong@gmail.com>
|
||||
GitHub User @wolf1996 (5901874) <ksgiv37@gmail.com>
|
||||
GitHub User @yah01 (12216890) <kagaminehuan@gmail.com>
|
||||
GitHub User @yuanhh (1298735) <yuan415030@gmail.com>
|
||||
@@ -1075,14 +1027,12 @@ Guilherme Garnier <guilherme.garnier@gmail.com>
|
||||
Guilherme Goncalves <guilhermeaugustosg@gmail.com>
|
||||
Guilherme Rezende <guilhermebr@gmail.com>
|
||||
Guilherme Souza <32180229+gqgs@users.noreply.github.com>
|
||||
Guillaume Blaquiere <guillaume.blaquiere@gmail.com>
|
||||
Guillaume J. Charmes <guillaume@charmes.net>
|
||||
Guillaume Sottas <guillaumesottas@gmail.com>
|
||||
Günther Noack <gnoack@google.com>
|
||||
Guobiao Mei <meiguobiao@gmail.com>
|
||||
Guodong Li <guodongli@google.com>
|
||||
Guoliang Wang <iamwgliang@gmail.com>
|
||||
Guoqi Chen <chenguoqi@loongson.cn>
|
||||
Gustav Paul <gustav.paul@gmail.com>
|
||||
Gustav Westling <gustav@westling.xyz>
|
||||
Gustavo Franco <gustavorfranco@gmail.com>
|
||||
@@ -1098,8 +1048,6 @@ Hang Qian <hangqian90@gmail.com>
|
||||
Hanjun Kim <hallazzang@gmail.com>
|
||||
Hanlin He <hanling.he@gmail.com>
|
||||
Hanlin Shi <shihanlin9@gmail.com>
|
||||
Hans Nielsen <hans@stackallocated.com>
|
||||
Hao Mou <mouhao.mu@gmail.com>
|
||||
Haoran Luo <haoran.luo@chaitin.com>
|
||||
Haosdent Huang <haosdent@gmail.com>
|
||||
Harald Nordgren <haraldnordgren@gmail.com>
|
||||
@@ -1161,6 +1109,7 @@ Ian Lance Taylor <iant@golang.org>
|
||||
Ian Leue <ian@appboy.com>
|
||||
Ian Mckay <iann0036@gmail.com>
|
||||
Ian Tay <iantay@google.com>
|
||||
Ian Woolf <btw515wolf2@gmail.com>
|
||||
Ian Zapolsky <ianzapolsky@gmail.com>
|
||||
Ibrahim AshShohail <ibra.sho@gmail.com>
|
||||
Icarus Sparry <golang@icarus.freeuk.com>
|
||||
@@ -1176,7 +1125,6 @@ Igor Zhilianin <igor.zhilianin@gmail.com>
|
||||
Ikko Ashimine <eltociear@gmail.com>
|
||||
Illya Yalovyy <yalovoy@gmail.com>
|
||||
Ilya Chukov <56119080+Elias506@users.noreply.github.com>
|
||||
Ilya Mateyko <me@astrophena.name>
|
||||
Ilya Sinelnikov <sidhmangh@gmail.com>
|
||||
Ilya Tocar <ilya.tocar@intel.com>
|
||||
INADA Naoki <songofacandy@gmail.com>
|
||||
@@ -1208,7 +1156,6 @@ Jaana Burcu Dogan <jbd@google.com> <jbd@golang.org> <burcujdogan@gmail.com>
|
||||
Jaap Aarts <jaap.aarts1@gmail.com>
|
||||
Jack Britton <jackxbritton@gmail.com>
|
||||
Jack Lindamood <jlindamo@justin.tv>
|
||||
Jack You <jamesyou@google.com>
|
||||
Jacob Baskin <jbaskin@google.com>
|
||||
Jacob Blain Christen <dweomer5@gmail.com>
|
||||
Jacob H. Haven <jacob@cloudflare.com>
|
||||
@@ -1217,7 +1164,6 @@ Jacob Walker <jacobwalker0814@gmail.com>
|
||||
Jaden Teng <long.asyn@gmail.com>
|
||||
Jae Kwon <jae@tendermint.com>
|
||||
Jake B <doogie1012@gmail.com>
|
||||
Jake Ciolek <jakub@ciolek.dev>
|
||||
Jakob Borg <jakob@nym.se>
|
||||
Jakob Weisblat <jakobw@mit.edu>
|
||||
Jakub Čajka <jcajka@redhat.com>
|
||||
@@ -1236,7 +1182,6 @@ James Eady <jmeady@google.com>
|
||||
James Fennell <jpfennell@google.com>
|
||||
James Fysh <james.fysh@gmail.com>
|
||||
James Gray <james@james4k.com>
|
||||
James Harris <mailjamesharris@gmail.com>
|
||||
James Hartig <fastest963@gmail.com>
|
||||
James Kasten <jdkasten@google.com>
|
||||
James Lawrence <jljatone@gmail.com>
|
||||
@@ -1300,7 +1245,6 @@ Jean de Klerk <deklerk@google.com>
|
||||
Jean-André Santoni <jean.andre.santoni@gmail.com>
|
||||
Jean-François Bustarret <jf@bustarret.com>
|
||||
Jean-Francois Cantin <jfcantin@gmail.com>
|
||||
Jean-Hadrien Chabran <jh@chabran.fr>
|
||||
Jean-Marc Eurin <jmeurin@google.com>
|
||||
Jean-Nicolas Moal <jn.moal@gmail.com>
|
||||
Jed Denlea <jed@fastly.com>
|
||||
@@ -1315,7 +1259,6 @@ Jeff Johnson <jrjohnson@google.com>
|
||||
Jeff R. Allen <jra@nella.org> <jeff.allen@gmail.com>
|
||||
Jeff Sickel <jas@corpus-callosum.com>
|
||||
Jeff Wendling <jeff@spacemonkey.com>
|
||||
Jeff Wentworth <j.wentworth@gmail.com>
|
||||
Jeff Widman <jeff@jeffwidman.com>
|
||||
Jeffrey H <jeffreyh192@gmail.com>
|
||||
Jelte Fennema <github-tech@jeltef.nl>
|
||||
@@ -1338,7 +1281,6 @@ Jesús Espino <jespinog@gmail.com>
|
||||
Jia Zhan <jzhan@uber.com>
|
||||
Jiacai Liu <jiacai2050@gmail.com>
|
||||
Jiahao Lu <lujjjh@gmail.com>
|
||||
Jiahua Wang <wjh180909@gmail.com>
|
||||
Jianing Yu <jnyu@google.com>
|
||||
Jianqiao Li <jianqiaoli@google.com>
|
||||
Jiayu Yi <yijiayu@gmail.com>
|
||||
@@ -1355,12 +1297,10 @@ Jingcheng Zhang <diogin@gmail.com>
|
||||
Jingguo Yao <yaojingguo@gmail.com>
|
||||
Jingnan Si <jingnan.si@gmail.com>
|
||||
Jinkun Zhang <franksnolf@gmail.com>
|
||||
Jinwen Wo <wojinwen@huawei.com>
|
||||
Jiong Du <londevil@gmail.com>
|
||||
Jirka Daněk <dnk@mail.muni.cz>
|
||||
Jiulong Wang <jiulongw@gmail.com>
|
||||
Joakim Sernbrant <serbaut@gmail.com>
|
||||
Jochen Weber <jochen.weber80@gmail.com>
|
||||
Joe Bowbeer <joe.bowbeer@gmail.com>
|
||||
Joe Cortopassi <joe@joecortopassi.com>
|
||||
Joe Farrell <joe2farrell@gmail.com>
|
||||
@@ -1383,7 +1323,6 @@ Johan Euphrosine <proppy@google.com>
|
||||
Johan Jansson <johan.jansson@iki.fi>
|
||||
Johan Knutzen <johan@senri.se>
|
||||
Johan Sageryd <j@1616.se>
|
||||
Johannes Altmanninger <aclopte@gmail.com>
|
||||
Johannes Huning <johannes.huning@gmail.com>
|
||||
John Asmuth <jasmuth@gmail.com>
|
||||
John Bampton <jbampton@gmail.com>
|
||||
@@ -1398,12 +1337,10 @@ John Howard Palevich <jack.palevich@gmail.com>
|
||||
John Jago <johnjago@protonmail.com>
|
||||
John Jeffery <jjeffery@sp.com.au>
|
||||
John Jenkins <twodopeshaggy@gmail.com>
|
||||
John Kelly <jkelly@squarespace.com>
|
||||
John Leidegren <john.leidegren@gmail.com>
|
||||
John McCabe <john@johnmccabe.net>
|
||||
John Moore <johnkenneth.moore@gmail.com>
|
||||
John Newlin <jnewlin@google.com>
|
||||
John Olheiser <john.olheiser@gmail.com>
|
||||
John Papandriopoulos <jpap.code@gmail.com>
|
||||
John Potocny <johnp@vividcortex.com>
|
||||
John R. Lenton <jlenton@gmail.com>
|
||||
@@ -1444,7 +1381,6 @@ Jordan Rupprecht <rupprecht@google.com>
|
||||
Jordi Martin <jordimartin@gmail.com>
|
||||
Jorge Araya <jorgejavieran@yahoo.com.mx>
|
||||
Jorge L. Fatta <jorge.fatta@auth0.com>
|
||||
Jorge Troncoso <jatron@google.com>
|
||||
Jos Visser <josv@google.com>
|
||||
Josa Gesell <josa@gesell.me>
|
||||
Jose Luis Vázquez González <josvazg@gmail.com>
|
||||
@@ -1571,7 +1507,6 @@ Keyuan Li <keyuanli123@gmail.com>
|
||||
Kezhu Wang <kezhuw@gmail.com>
|
||||
Khosrow Moossavi <khos2ow@gmail.com>
|
||||
Kieran Colford <kieran@kcolford.com>
|
||||
Kieran Gorman <kieran.j.gorman@gmail.com>
|
||||
Kim Shrier <kshrier@racktopsystems.com>
|
||||
Kim Yongbin <kybinz@gmail.com>
|
||||
Kir Kolyshkin <kolyshkin@gmail.com>
|
||||
@@ -1635,13 +1570,12 @@ Leigh McCulloch <leighmcc@gmail.com>
|
||||
Leo Antunes <leo@costela.net>
|
||||
Leo Rudberg <ljr@google.com>
|
||||
Leon Klingele <git@leonklingele.de>
|
||||
Leonard Wang <wangdeyu0907@gmail.com> <wangdeyu@golangcn.org>
|
||||
Leonard Wang <wangdeyu0907@gmail.com>
|
||||
Leonardo Comelli <leonardo.comelli@gmail.com>
|
||||
Leonel Quinteros <leonel.quinteros@gmail.com>
|
||||
Lev Shamardin <shamardin@gmail.com>
|
||||
Lewin Bormann <lewin.bormann@gmail.com>
|
||||
Lewis Waddicor <nemesismk2@gmail.com>
|
||||
Li-Yu Yu <aaronyu@google.com>
|
||||
Liam Haworth <liam@haworth.id.au>
|
||||
Lily Chung <lilithkchung@gmail.com>
|
||||
Lingchao Xin <douglarek@gmail.com>
|
||||
@@ -1722,9 +1656,7 @@ Mark Adams <mark@markadams.me>
|
||||
Mark Bucciarelli <mkbucc@gmail.com>
|
||||
Mark Dain <mark@markdain.net>
|
||||
Mark Glines <mark@glines.org>
|
||||
Mark Hansen <markhansen@google.com>
|
||||
Mark Harrison <marhar@google.com>
|
||||
Mark Jeffery <dandare100@gmail.com>
|
||||
Mark Percival <m@mdp.im>
|
||||
Mark Pulford <mark@kyne.com.au>
|
||||
Mark Rushakoff <mark.rushakoff@gmail.com>
|
||||
@@ -1753,7 +1685,7 @@ Martin Hoefling <martin.hoefling@gmx.de>
|
||||
Martin Kreichgauer <martinkr@google.com>
|
||||
Martin Kunc <martinkunc@users.noreply.github.com>
|
||||
Martin Lindhe <martin.j.lindhe@gmail.com>
|
||||
Martin Möhrmann <martin@golang.org> <moehrmann@google.com> <martisch@uos.de>
|
||||
Martin Möhrmann <moehrmann@google.com> <martisch@uos.de>
|
||||
Martin Neubauer <m.ne@gmx.net>
|
||||
Martin Olsen <github.com@martinolsen.net>
|
||||
Martin Olsson <martin@minimum.se>
|
||||
@@ -1792,7 +1724,7 @@ Matt Jibson <matt.jibson@gmail.com>
|
||||
Matt Joiner <anacrolix@gmail.com>
|
||||
Matt Jones <mrjones@google.com>
|
||||
Matt Juran <thepciet@gmail.com>
|
||||
Matt Layher <mdlayher@gmail.com> <mdlayher@planetscale.com>
|
||||
Matt Layher <mdlayher@gmail.com>
|
||||
Matt Masurka <masurka@google.com>
|
||||
Matt Pearring <broskies@google.com>
|
||||
Matt Reiferson <mreiferson@gmail.com>
|
||||
@@ -1808,7 +1740,6 @@ Matthew Denton <mdenton@skyportsystems.com>
|
||||
Matthew Holt <Matthew.Holt+git@gmail.com>
|
||||
Matthew Horsnell <matthew.horsnell@gmail.com>
|
||||
Matthew Waters <mwwaters@gmail.com>
|
||||
Matthias Dötsch <matze@mdoetsch.de>
|
||||
Matthias Frei <matthias.frei@inf.ethz.ch>
|
||||
Matthieu Hauglustaine <matt.hauglustaine@gmail.com>
|
||||
Matthieu Olivier <olivier.matthieu@gmail.com>
|
||||
@@ -1882,7 +1813,6 @@ Michal Bohuslávek <mbohuslavek@gmail.com>
|
||||
Michal Cierniak <cierniak@google.com>
|
||||
Michał Derkacz <ziutek@lnet.pl>
|
||||
Michal Franc <lam.michal.franc@gmail.com>
|
||||
Michal Hruby <michal@axiom.co>
|
||||
Michał Łowicki <mlowicki@gmail.com>
|
||||
Michal Pristas <michal.pristas@gmail.com>
|
||||
Michal Rostecki <mrostecki@suse.de>
|
||||
@@ -1913,7 +1843,6 @@ Mike Solomon <msolo@gmail.com>
|
||||
Mike Strosaker <strosake@us.ibm.com>
|
||||
Mike Tsao <mike@sowbug.com>
|
||||
Mike Wiacek <mjwiacek@google.com>
|
||||
Mikhail Faraponov <11322032+moredure@users.noreply.github.com>
|
||||
Mikhail Fesenko <proggga@gmail.com>
|
||||
Mikhail Gusarov <dottedmag@dottedmag.net>
|
||||
Mikhail Panchenko <m@mihasya.com>
|
||||
@@ -1940,7 +1869,6 @@ Moritz Fain <moritz@fain.io>
|
||||
Moriyoshi Koizumi <mozo@mozo.jp>
|
||||
Morten Siebuhr <sbhr@sbhr.dk>
|
||||
Môshe van der Sterre <moshevds@gmail.com>
|
||||
Mostafa Solati <mostafa.solati@gmail.com>
|
||||
Mostyn Bramley-Moore <mostyn@antipode.se>
|
||||
Mrunal Patel <mrunalp@gmail.com>
|
||||
Muhammad Falak R Wani <falakreyaz@gmail.com>
|
||||
@@ -1974,7 +1902,6 @@ Naveen Kumar Sangi <naveenkumarsangi@protonmail.com>
|
||||
Neeilan Selvalingam <neeilan96@gmail.com>
|
||||
Neelesh Chandola <neelesh.c98@gmail.com>
|
||||
Nehal J Wani <nehaljw.kkd1@gmail.com>
|
||||
Neil Alexander <neilalexander@neilalexander.dev>
|
||||
Neil Lyons <nwjlyons@googlemail.com>
|
||||
Neuman Vong <neuman.vong@gmail.com>
|
||||
Neven Sajko <nsajko@gmail.com>
|
||||
@@ -1998,7 +1925,6 @@ Nick Miyake <nmiyake@users.noreply.github.com>
|
||||
Nick Patavalis <nick.patavalis@gmail.com>
|
||||
Nick Petroni <npetroni@cs.umd.edu>
|
||||
Nick Robinson <nrobinson13@gmail.com>
|
||||
Nick Sherron <nsherron90@gmail.com>
|
||||
Nick Smolin <nick27surgut@gmail.com>
|
||||
Nicolas BRULEZ <n.brulez@gmail.com>
|
||||
Nicolas Kaiser <nikai@nikai.net>
|
||||
@@ -2028,7 +1954,6 @@ Noah Santschi-Cooney <noah@santschi-cooney.ch>
|
||||
Noble Johnson <noblepoly@gmail.com>
|
||||
Nodir Turakulov <nodir@google.com>
|
||||
Noel Georgi <git@frezbo.com>
|
||||
Nooras Saba <saba@golang.org>
|
||||
Norberto Lopes <nlopes.ml@gmail.com>
|
||||
Norman B. Lancaster <qbradq@gmail.com>
|
||||
Nuno Cruces <ncruces@users.noreply.github.com>
|
||||
@@ -2046,7 +1971,6 @@ Oliver Tan <otan@cockroachlabs.com>
|
||||
Oliver Tonnhofer <olt@bogosoft.com>
|
||||
Olivier Antoine <olivier.antoine@gmail.com>
|
||||
Olivier Duperray <duperray.olivier@gmail.com>
|
||||
Olivier Mengué <olivier.mengue@gmail.com>
|
||||
Olivier Poitrey <rs@dailymotion.com>
|
||||
Olivier Saingre <osaingre@gmail.com>
|
||||
Olivier Wulveryck <olivier.wulveryck@gmail.com>
|
||||
@@ -2056,7 +1980,6 @@ Ori Bernstein <ori@eigenstate.org>
|
||||
Ori Rawlings <orirawlings@gmail.com>
|
||||
Oryan Moshe <iamoryanmoshe@gmail.com>
|
||||
Osamu TONOMORI <osamingo@gmail.com>
|
||||
Oscar Söderlund <oscar.soderlund@einride.tech>
|
||||
Özgür Kesim <oec-go@kesim.org>
|
||||
Pablo Caderno <kaderno@gmail.com>
|
||||
Pablo Lalloni <plalloni@gmail.com>
|
||||
@@ -2089,7 +2012,6 @@ Patrick Pelletier <pp.pelletier@gmail.com>
|
||||
Patrick Riley <pfr@google.com>
|
||||
Patrick Smith <pat42smith@gmail.com>
|
||||
Patrik Lundin <patrik@sigterm.se>
|
||||
Patrik Nyblom <pnyb@google.com>
|
||||
Paul A Querna <paul.querna@gmail.com>
|
||||
Paul Borman <borman@google.com>
|
||||
Paul Boyd <boyd.paul2@gmail.com>
|
||||
@@ -2118,7 +2040,6 @@ Paul Wankadia <junyer@google.com>
|
||||
Paulo Casaretto <pcasaretto@gmail.com>
|
||||
Paulo Flabiano Smorigo <pfsmorigo@linux.vnet.ibm.com>
|
||||
Paulo Gomes <paulo.gomes.uk@gmail.com>
|
||||
Pavel Kositsyn <kositsyn.pa@phystech.edu>
|
||||
Pavel Paulau <pavel.paulau@gmail.com>
|
||||
Pavel Watson <watsonpavel@gmail.com>
|
||||
Pavel Zinovkin <pavel.zinovkin@gmail.com>
|
||||
@@ -2126,7 +2047,6 @@ Pavlo Sumkin <ymkins@gmail.com>
|
||||
Pawel Knap <pawelknap88@gmail.com>
|
||||
Pawel Szczur <filemon@google.com>
|
||||
Paweł Szulik <pawel.szulik@intel.com>
|
||||
Pedro Lopez Mareque <pedro.lopez.mareque@gmail.com>
|
||||
Pei Xian Chee <luciolas1991@gmail.com>
|
||||
Pei-Ming Wu <p408865@gmail.com>
|
||||
Pen Tree <appletree2479@outlook.com>
|
||||
@@ -2242,7 +2162,6 @@ Rhys Hiltner <rhys@justin.tv>
|
||||
Ricardo Padilha <ricardospadilha@gmail.com>
|
||||
Ricardo Pchevuzinske Katz <ricardo.katz@serpro.gov.br>
|
||||
Ricardo Seriani <ricardo.seriani@gmail.com>
|
||||
Rich Hong <hong.rich@gmail.com>
|
||||
Richard Barnes <rlb@ipv.sx>
|
||||
Richard Crowley <r@rcrowley.org>
|
||||
Richard Dingwall <rdingwall@gmail.com>
|
||||
@@ -2258,7 +2177,6 @@ Rick Hudson <rlh@golang.org>
|
||||
Rick Sayre <whorfin@gmail.com>
|
||||
Rijnard van Tonder <rvantonder@gmail.com>
|
||||
Riku Voipio <riku.voipio@linaro.org>
|
||||
Riley Avron <ra.git@posteo.net>
|
||||
Risto Jaakko Saarelma <rsaarelm@gmail.com>
|
||||
Rob Earhart <earhart@google.com>
|
||||
Rob Findley <rfindley@google.com>
|
||||
@@ -2266,10 +2184,8 @@ Rob Norman <rob.norman@infinitycloud.com>
|
||||
Rob Phoenix <rob@robphoenix.com>
|
||||
Rob Pike <r@golang.org>
|
||||
Robert Ayrapetyan <robert.ayrapetyan@gmail.com>
|
||||
Robert Burke <rebo@google.com>
|
||||
Robert Daniel Kortschak <dan.kortschak@adelaide.edu.au> <dan@kortschak.io>
|
||||
Robert Dinu <r@varp.se>
|
||||
Robert Engels <rengels@ix.netcom.com>
|
||||
Robert Figueiredo <robfig@gmail.com>
|
||||
Robert Griesemer <gri@golang.org>
|
||||
Robert Hencke <robert.hencke@gmail.com>
|
||||
@@ -2294,7 +2210,6 @@ Roger Peppe <rogpeppe@gmail.com>
|
||||
Rohan Challa <rohan@golang.org>
|
||||
Rohan Verma <rohanverma2004@gmail.com>
|
||||
Rohith Ravi <entombedvirus@gmail.com>
|
||||
Roi Martin <jroi.martin@gmail.com>
|
||||
Roland Illig <roland.illig@gmx.de>
|
||||
Roland Shoemaker <rolandshoemaker@gmail.com>
|
||||
Romain Baugue <romain.baugue@elwinar.com>
|
||||
@@ -2325,7 +2240,6 @@ Ryan Canty <jrcanty@gmail.com>
|
||||
Ryan Dahl <ry@tinyclouds.org>
|
||||
Ryan Hitchman <hitchmanr@gmail.com>
|
||||
Ryan Kohler <ryankohler@google.com>
|
||||
Ryan Leung <rleungx@gmail.com>
|
||||
Ryan Lower <rpjlower@gmail.com>
|
||||
Ryan Roden-Corrent <ryan@rcorre.net>
|
||||
Ryan Seys <ryan@ryanseys.com>
|
||||
@@ -2359,7 +2273,6 @@ Sami Pönkänen <sami.ponkanen@gmail.com>
|
||||
Samuel Kelemen <SCKelemen@users.noreply.github.com>
|
||||
Samuel Tan <samueltan@google.com>
|
||||
Samuele Pedroni <pedronis@lucediurna.net>
|
||||
San Ye <xyesan@gmail.com>
|
||||
Sander van Harmelen <sander@vanharmelen.nl>
|
||||
Sanjay Menakuru <balasanjay@gmail.com>
|
||||
Santhosh Kumar Tekuri <santhosh.tekuri@gmail.com>
|
||||
@@ -2424,7 +2337,6 @@ Shaba Abhiram <shabarivas.abhiram@gmail.com>
|
||||
Shahar Kohanim <skohanim@gmail.com>
|
||||
Shailesh Suryawanshi <ss.shailesh28@gmail.com>
|
||||
Shamil Garatuev <garatuev@gmail.com>
|
||||
Shamim Akhtar <shamim.rhce@gmail.com>
|
||||
Shane Hansen <shanemhansen@gmail.com>
|
||||
Shang Jian Ding <sding3@ncsu.edu>
|
||||
Shaozhen Ding <dsz0111@gmail.com>
|
||||
@@ -2461,7 +2373,6 @@ Simon Drake <simondrake1990@gmail.com>
|
||||
Simon Ferquel <simon.ferquel@docker.com>
|
||||
Simon Frei <freisim93@gmail.com>
|
||||
Simon Jefford <simon.jefford@gmail.com>
|
||||
Simon Law <sfllaw@sfllaw.ca>
|
||||
Simon Rawet <simon@rawet.se>
|
||||
Simon Rozman <simon@rozman.si>
|
||||
Simon Ser <contact@emersion.fr>
|
||||
@@ -2527,7 +2438,6 @@ Suharsh Sivakumar <suharshs@google.com>
|
||||
Sukrit Handa <sukrit.handa@utoronto.ca>
|
||||
Sunny <me@darkowlzz.space>
|
||||
Suriyaa Sundararuban <suriyaasundararuban@gmail.com>
|
||||
Suvaditya Sur <suvaditya.sur@gmail.com>
|
||||
Suyash <dextrous93@gmail.com>
|
||||
Suzy Mueller <suzmue@golang.org>
|
||||
Sven Almgren <sven@tras.se>
|
||||
@@ -2590,7 +2500,6 @@ Thomas Symborski <thomas.symborski@gmail.com>
|
||||
Thomas Wanielista <tomwans@gmail.com>
|
||||
Thorben Krueger <thorben.krueger@gmail.com>
|
||||
Thordur Bjornsson <thorduri@secnorth.net>
|
||||
Tiago Peczenyj <tpeczenyj@weborama.com>
|
||||
Tiago Queiroz <contato@tiago.eti.br>
|
||||
Tianji Wu <the729@gmail.com>
|
||||
Tianon Gravi <admwiggin@gmail.com>
|
||||
@@ -2725,7 +2634,6 @@ Vladimir Varankin <nek.narqo@gmail.com>
|
||||
Vojtech Bocek <vbocek@gmail.com>
|
||||
Volker Dobler <dr.volker.dobler@gmail.com>
|
||||
Volodymyr Paprotski <vpaprots@ca.ibm.com>
|
||||
Vyacheslav Pachkov <slava.pach@gmail.com>
|
||||
W. Trevor King <wking@tremily.us>
|
||||
Wade Simmons <wade@wades.im>
|
||||
Wagner Riffel <wgrriffel@gmail.com>
|
||||
@@ -2743,10 +2651,8 @@ Wei Guangjing <vcc.163@gmail.com>
|
||||
Wei Xiao <wei.xiao@arm.com>
|
||||
Wei Xikai <xykwei@gmail.com>
|
||||
Weichao Tang <tevic.tt@gmail.com>
|
||||
Weilu Jia <optix2000@gmail.com>
|
||||
Weixie Cui <cuiweixie@gmail.com> <523516579@qq.com>
|
||||
Wembley G. Leach, Jr <wembley.gl@gmail.com>
|
||||
Wen Yang <yangwen.yw@gmail.com>
|
||||
Wenlei (Frank) He <wlhe@google.com>
|
||||
Wenzel Lowe <lowewenzel@gmail.com>
|
||||
Wil Selwood <wselwood@gmail.com>
|
||||
@@ -2814,11 +2720,9 @@ Yuichi Nishiwaki <yuichi.nishiwaki@gmail.com>
|
||||
Yuji Yaginuma <yuuji.yaginuma@gmail.com>
|
||||
Yuki Ito <mrno110y@gmail.com>
|
||||
Yuki OKUSHI <huyuumi.dev@gmail.com>
|
||||
Yuki Osaki <yuki.osaki7@gmail.com>
|
||||
Yuki Yugui Sonoda <yugui@google.com>
|
||||
Yukihiro Nishinaka <6elpinal@gmail.com>
|
||||
YunQiang Su <syq@debian.org>
|
||||
Yuntao Wang <ytcoode@gmail.com>
|
||||
Yury Smolsky <yury@smolsky.by>
|
||||
Yusuke Kagiwada <block.rxckin.beats@gmail.com>
|
||||
Yuusei Kuwana <kuwana@kumama.org>
|
||||
@@ -2830,9 +2734,7 @@ Zach Gershman <zachgersh@gmail.com>
|
||||
Zach Hoffman <zrhoffman@apache.org>
|
||||
Zach Jones <zachj1@gmail.com>
|
||||
Zachary Amsden <zach@thundertoken.com>
|
||||
Zachary Burkett <zburkett@splitcubestudios.com>
|
||||
Zachary Gershman <zgershman@pivotal.io>
|
||||
Zaiyang Li <zaiyangli777@gmail.com>
|
||||
Zak <zrjknill@gmail.com>
|
||||
Zakatell Kanda <hi@zkanda.io>
|
||||
Zellyn Hunter <zellyn@squareup.com> <zellyn@gmail.com>
|
||||
@@ -2841,15 +2743,12 @@ Zhang Boyang <zhangboyang.id@gmail.com>
|
||||
Zheng Dayu <davidzheng23@gmail.com>
|
||||
Zheng Xu <zheng.xu@arm.com>
|
||||
Zhengyu He <hzy@google.com>
|
||||
Zhi Zheng <zhi.zheng052@gmail.com>
|
||||
Zhongpeng Lin <zplin@uber.com>
|
||||
Zhongtao Chen <chenzhongtao@126.com>
|
||||
Zhongwei Yao <zhongwei.yao@arm.com>
|
||||
Zhou Guangyuan <zhouguangyuan.xian@gmail.com>
|
||||
Zhou Peng <p@ctriple.cn>
|
||||
Ziad Hatahet <hatahet@gmail.com>
|
||||
Ziheng Liu <lzhfromustc@gmail.com>
|
||||
Zizhao Zhang <btw515wolf2@gmail.com>
|
||||
Zorion Arrizabalaga <zorionk@gmail.com>
|
||||
Zvonimir Pavlinovic <zpavlinovic@google.com>
|
||||
Zyad A. Ali <zyad.ali.me@gmail.com>
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
# dev.boringcrypto branch
|
||||
|
||||
This branch is no more. `GOEXPERIMENT=boringcrypto` on the standard branch does the job now.
|
||||
|
||||
Previous notice:
|
||||
|
||||
We have been working inside Google on a fork of Go that uses
|
||||
BoringCrypto (the core of [BoringSSL][]) for various crypto
|
||||
primitives, in furtherance of some [work related to FIPS 140-2][sp].
|
||||
|
||||
10
README.md
10
README.md
@@ -16,26 +16,26 @@ BSD-style license found in the LICENSE file.
|
||||
|
||||
#### Binary Distributions
|
||||
|
||||
Official binary distributions are available at https://go.dev/dl/.
|
||||
Official binary distributions are available at https://golang.org/dl/.
|
||||
|
||||
After downloading a binary release, visit https://go.dev/doc/install
|
||||
After downloading a binary release, visit https://golang.org/doc/install
|
||||
for installation instructions.
|
||||
|
||||
#### Install From Source
|
||||
|
||||
If a binary distribution is not available for your combination of
|
||||
operating system and architecture, visit
|
||||
https://go.dev/doc/install/source
|
||||
https://golang.org/doc/install/source
|
||||
for source installation instructions.
|
||||
|
||||
### Contributing
|
||||
|
||||
Go is the work of thousands of contributors. We appreciate your help!
|
||||
|
||||
To contribute, please read the contribution guidelines at https://go.dev/doc/contribute.
|
||||
To contribute, please read the contribution guidelines at https://golang.org/doc/contribute.html.
|
||||
|
||||
Note that the Go project uses the issue tracker for bug reports and
|
||||
proposals only. See https://go.dev/wiki/Questions for a list of
|
||||
proposals only. See https://golang.org/wiki/Questions for a list of
|
||||
places to ask questions about the Go language.
|
||||
|
||||
[rf]: https://reneefrench.blogspot.com/
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
|
||||
## Supported Versions
|
||||
|
||||
We support the past two Go releases (for example, Go 1.17.x and Go 1.18.x when Go 1.18.x is the latest stable release).
|
||||
We support the past two Go releases (for example, Go 1.12.x and Go 1.13.x).
|
||||
|
||||
See https://go.dev/wiki/Go-Release-Cycle and in particular the
|
||||
[Release Maintenance](https://go.dev/wiki/Go-Release-Cycle#release-maintenance)
|
||||
See https://golang.org/wiki/Go-Release-Cycle and in particular the
|
||||
[Release Maintenance](https://github.com/golang/go/wiki/Go-Release-Cycle#release-maintenance)
|
||||
part of that page.
|
||||
|
||||
## Reporting a Vulnerability
|
||||
|
||||
See https://go.dev/security for how to report a vulnerability.
|
||||
See https://golang.org/security for how to report a vulnerability.
|
||||
|
||||
16
api/README
16
api/README
@@ -8,16 +8,6 @@ shipped. Each file adds new lines but does not remove any.
|
||||
except.txt lists features that may disappear without breaking true
|
||||
compatibility.
|
||||
|
||||
Starting with go1.19.txt, each API feature line must end in "#nnnnn"
|
||||
giving the GitHub issue number of the proposal issue that accepted
|
||||
the new API. This helps with our end-of-cycle audit of new APIs.
|
||||
The same requirement applies to next/* (described below), which will
|
||||
become a go1.XX.txt for XX >= 19.
|
||||
|
||||
The next/ directory contains the only files intended to be mutated.
|
||||
Each file in that directory contains a list of features that may be added
|
||||
to the next release of Go. The files in this directory only affect the
|
||||
warning output from the go api tool. Each file should be named
|
||||
nnnnn.txt, after the issue number for the accepted proposal.
|
||||
(The #nnnnn suffix must also appear at the end of each line in the file;
|
||||
that will be preserved when next/*.txt is concatenated into go1.XX.txt.)
|
||||
next.txt is the only file intended to be mutated. It's a list of
|
||||
features that may be added to the next version. It only affects
|
||||
warning output from the go api tool.
|
||||
|
||||
@@ -492,7 +492,6 @@ pkg syscall (windows-amd64), type CertRevocationInfo struct, OidSpecificInfo uin
|
||||
pkg syscall (windows-amd64), type CertSimpleChain struct, TrustListInfo uintptr
|
||||
pkg syscall (windows-amd64), type RawSockaddrAny struct, Pad [96]int8
|
||||
pkg testing, func MainStart(func(string, string) (bool, error), []InternalTest, []InternalBenchmark, []InternalExample) *M
|
||||
pkg testing, func MainStart(testDeps, []InternalTest, []InternalBenchmark, []InternalExample) *M
|
||||
pkg testing, func RegisterCover(Cover)
|
||||
pkg text/scanner, const GoTokens = 1012
|
||||
pkg text/template/parse, type DotNode bool
|
||||
@@ -505,5 +504,3 @@ pkg unicode, const Version = "6.3.0"
|
||||
pkg unicode, const Version = "7.0.0"
|
||||
pkg unicode, const Version = "8.0.0"
|
||||
pkg unicode, const Version = "9.0.0"
|
||||
pkg html/template, method (*Template) Funcs(FuncMap) *Template
|
||||
pkg html/template, type FuncMap map[string]interface{}
|
||||
|
||||
@@ -371,7 +371,7 @@ pkg debug/elf, const ELFCLASSNONE = 0
|
||||
pkg debug/elf, const ELFDATA2LSB = 1
|
||||
pkg debug/elf, const ELFDATA2MSB = 2
|
||||
pkg debug/elf, const ELFDATANONE = 0
|
||||
pkg debug/elf, const ELFMAG = "\x7fELF"
|
||||
pkg debug/elf, const ELFMAG = "\u007fELF"
|
||||
pkg debug/elf, const ELFOSABI_86OPEN = 5
|
||||
pkg debug/elf, const ELFOSABI_AIX = 7
|
||||
pkg debug/elf, const ELFOSABI_ARM = 97
|
||||
@@ -2603,34 +2603,7 @@ pkg runtime/debug, type GCStats struct, Pause []time.Duration
|
||||
pkg runtime/debug, type GCStats struct, PauseQuantiles []time.Duration
|
||||
pkg runtime/debug, type GCStats struct, PauseTotal time.Duration
|
||||
pkg sort, func Reverse(Interface) Interface
|
||||
pkg strconv (darwin-amd64), const IntSize = 64
|
||||
pkg strconv (darwin-amd64-cgo), const IntSize = 64
|
||||
pkg strconv (freebsd-386), const IntSize = 32
|
||||
pkg strconv (freebsd-386-cgo), const IntSize = 32
|
||||
pkg strconv (freebsd-amd64), const IntSize = 64
|
||||
pkg strconv (freebsd-amd64-cgo), const IntSize = 64
|
||||
pkg strconv (freebsd-arm), const IntSize = 32
|
||||
pkg strconv (freebsd-arm-cgo), const IntSize = 32
|
||||
pkg strconv (linux-386), const IntSize = 32
|
||||
pkg strconv (linux-386-cgo), const IntSize = 32
|
||||
pkg strconv (linux-amd64), const IntSize = 64
|
||||
pkg strconv (linux-amd64-cgo), const IntSize = 64
|
||||
pkg strconv (linux-arm), const IntSize = 32
|
||||
pkg strconv (linux-arm-cgo), const IntSize = 32
|
||||
pkg strconv (netbsd-386), const IntSize = 32
|
||||
pkg strconv (netbsd-386-cgo), const IntSize = 32
|
||||
pkg strconv (netbsd-amd64), const IntSize = 64
|
||||
pkg strconv (netbsd-amd64-cgo), const IntSize = 64
|
||||
pkg strconv (netbsd-arm), const IntSize = 32
|
||||
pkg strconv (netbsd-arm-cgo), const IntSize = 32
|
||||
pkg strconv (netbsd-arm64), const IntSize = 64
|
||||
pkg strconv (netbsd-arm64-cgo), const IntSize = 64
|
||||
pkg strconv (openbsd-386), const IntSize = 32
|
||||
pkg strconv (openbsd-386-cgo), const IntSize = 32
|
||||
pkg strconv (openbsd-amd64), const IntSize = 64
|
||||
pkg strconv (openbsd-amd64-cgo), const IntSize = 64
|
||||
pkg strconv (windows-386), const IntSize = 32
|
||||
pkg strconv (windows-amd64), const IntSize = 64
|
||||
pkg strconv, const IntSize = 64
|
||||
pkg strings, func TrimPrefix(string, string) string
|
||||
pkg strings, func TrimSuffix(string, string) string
|
||||
pkg strings, method (*Reader) WriteTo(io.Writer) (int64, error)
|
||||
@@ -49393,7 +49366,7 @@ pkg syscall (windows-386), const IP_MULTICAST_TTL = 10
|
||||
pkg syscall (windows-386), const IP_TOS = 3
|
||||
pkg syscall (windows-386), const IP_TTL = 4
|
||||
pkg syscall (windows-386), const ImplementsGetwd = true
|
||||
pkg syscall (windows-386), const InvalidHandle = 4294967295
|
||||
pkg syscall (windows-386), const InvalidHandle = 18446744073709551615
|
||||
pkg syscall (windows-386), const KEY_ALL_ACCESS = 983103
|
||||
pkg syscall (windows-386), const KEY_CREATE_LINK = 32
|
||||
pkg syscall (windows-386), const KEY_CREATE_SUB_KEY = 4
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
pkg archive/zip, method (*ReadCloser) Open(string) (fs.File, error)
|
||||
pkg archive/zip, method (*Reader) Open(string) (fs.File, error)
|
||||
pkg crypto/boring, func Enabled() bool
|
||||
pkg crypto/x509, method (SystemRootsError) Unwrap() error
|
||||
pkg debug/elf, const DT_ADDRRNGHI = 1879047935
|
||||
pkg debug/elf, const DT_ADDRRNGHI DynTag
|
||||
|
||||
@@ -63,93 +63,12 @@ pkg image/draw, type RGBA64Image interface, RGBA64At(int, int) color.RGBA64
|
||||
pkg image/draw, type RGBA64Image interface, Set(int, int, color.Color)
|
||||
pkg image/draw, type RGBA64Image interface, SetRGBA64(int, int, color.RGBA64)
|
||||
pkg io/fs, func FileInfoToDirEntry(FileInfo) DirEntry
|
||||
pkg math (darwin-amd64), const MaxInt = 9223372036854775807
|
||||
pkg math (darwin-amd64), const MaxUint = 18446744073709551615
|
||||
pkg math (darwin-amd64), const MinInt = -9223372036854775808
|
||||
pkg math (darwin-amd64-cgo), const MaxInt = 9223372036854775807
|
||||
pkg math (darwin-amd64-cgo), const MaxUint = 18446744073709551615
|
||||
pkg math (darwin-amd64-cgo), const MinInt = -9223372036854775808
|
||||
pkg math (freebsd-386), const MaxInt = 2147483647
|
||||
pkg math (freebsd-386), const MaxUint = 4294967295
|
||||
pkg math (freebsd-386), const MinInt = -2147483648
|
||||
pkg math (freebsd-386-cgo), const MaxInt = 2147483647
|
||||
pkg math (freebsd-386-cgo), const MaxUint = 4294967295
|
||||
pkg math (freebsd-386-cgo), const MinInt = -2147483648
|
||||
pkg math (freebsd-amd64), const MaxInt = 9223372036854775807
|
||||
pkg math (freebsd-amd64), const MaxUint = 18446744073709551615
|
||||
pkg math (freebsd-amd64), const MinInt = -9223372036854775808
|
||||
pkg math (freebsd-amd64-cgo), const MaxInt = 9223372036854775807
|
||||
pkg math (freebsd-amd64-cgo), const MaxUint = 18446744073709551615
|
||||
pkg math (freebsd-amd64-cgo), const MinInt = -9223372036854775808
|
||||
pkg math (freebsd-arm), const MaxInt = 2147483647
|
||||
pkg math (freebsd-arm), const MaxUint = 4294967295
|
||||
pkg math (freebsd-arm), const MinInt = -2147483648
|
||||
pkg math (freebsd-arm-cgo), const MaxInt = 2147483647
|
||||
pkg math (freebsd-arm-cgo), const MaxUint = 4294967295
|
||||
pkg math (freebsd-arm-cgo), const MinInt = -2147483648
|
||||
pkg math (linux-386), const MaxInt = 2147483647
|
||||
pkg math (linux-386), const MaxUint = 4294967295
|
||||
pkg math (linux-386), const MinInt = -2147483648
|
||||
pkg math (linux-386-cgo), const MaxInt = 2147483647
|
||||
pkg math (linux-386-cgo), const MaxUint = 4294967295
|
||||
pkg math (linux-386-cgo), const MinInt = -2147483648
|
||||
pkg math (linux-amd64), const MaxInt = 9223372036854775807
|
||||
pkg math (linux-amd64), const MaxUint = 18446744073709551615
|
||||
pkg math (linux-amd64), const MinInt = -9223372036854775808
|
||||
pkg math (linux-amd64-cgo), const MaxInt = 9223372036854775807
|
||||
pkg math (linux-amd64-cgo), const MaxUint = 18446744073709551615
|
||||
pkg math (linux-amd64-cgo), const MinInt = -9223372036854775808
|
||||
pkg math (linux-arm), const MaxInt = 2147483647
|
||||
pkg math (linux-arm), const MaxUint = 4294967295
|
||||
pkg math (linux-arm), const MinInt = -2147483648
|
||||
pkg math (linux-arm-cgo), const MaxInt = 2147483647
|
||||
pkg math (linux-arm-cgo), const MaxUint = 4294967295
|
||||
pkg math (linux-arm-cgo), const MinInt = -2147483648
|
||||
pkg math (netbsd-386), const MaxInt = 2147483647
|
||||
pkg math (netbsd-386), const MaxUint = 4294967295
|
||||
pkg math (netbsd-386), const MinInt = -2147483648
|
||||
pkg math (netbsd-386-cgo), const MaxInt = 2147483647
|
||||
pkg math (netbsd-386-cgo), const MaxUint = 4294967295
|
||||
pkg math (netbsd-386-cgo), const MinInt = -2147483648
|
||||
pkg math (netbsd-amd64), const MaxInt = 9223372036854775807
|
||||
pkg math (netbsd-amd64), const MaxUint = 18446744073709551615
|
||||
pkg math (netbsd-amd64), const MinInt = -9223372036854775808
|
||||
pkg math (netbsd-amd64-cgo), const MaxInt = 9223372036854775807
|
||||
pkg math (netbsd-amd64-cgo), const MaxUint = 18446744073709551615
|
||||
pkg math (netbsd-amd64-cgo), const MinInt = -9223372036854775808
|
||||
pkg math (netbsd-arm), const MaxInt = 2147483647
|
||||
pkg math (netbsd-arm), const MaxUint = 4294967295
|
||||
pkg math (netbsd-arm), const MinInt = -2147483648
|
||||
pkg math (netbsd-arm-cgo), const MaxInt = 2147483647
|
||||
pkg math (netbsd-arm-cgo), const MaxUint = 4294967295
|
||||
pkg math (netbsd-arm-cgo), const MinInt = -2147483648
|
||||
pkg math (netbsd-arm64), const MaxInt = 9223372036854775807
|
||||
pkg math (netbsd-arm64), const MaxUint = 18446744073709551615
|
||||
pkg math (netbsd-arm64), const MinInt = -9223372036854775808
|
||||
pkg math (netbsd-arm64-cgo), const MaxInt = 9223372036854775807
|
||||
pkg math (netbsd-arm64-cgo), const MaxUint = 18446744073709551615
|
||||
pkg math (netbsd-arm64-cgo), const MinInt = -9223372036854775808
|
||||
pkg math (openbsd-386), const MaxInt = 2147483647
|
||||
pkg math (openbsd-386), const MaxUint = 4294967295
|
||||
pkg math (openbsd-386), const MinInt = -2147483648
|
||||
pkg math (openbsd-386-cgo), const MaxInt = 2147483647
|
||||
pkg math (openbsd-386-cgo), const MaxUint = 4294967295
|
||||
pkg math (openbsd-386-cgo), const MinInt = -2147483648
|
||||
pkg math (openbsd-amd64), const MaxInt = 9223372036854775807
|
||||
pkg math (openbsd-amd64), const MaxUint = 18446744073709551615
|
||||
pkg math (openbsd-amd64), const MinInt = -9223372036854775808
|
||||
pkg math (openbsd-amd64-cgo), const MaxInt = 9223372036854775807
|
||||
pkg math (openbsd-amd64-cgo), const MaxUint = 18446744073709551615
|
||||
pkg math (openbsd-amd64-cgo), const MinInt = -9223372036854775808
|
||||
pkg math (windows-386), const MaxInt = 2147483647
|
||||
pkg math (windows-386), const MaxUint = 4294967295
|
||||
pkg math (windows-386), const MinInt = -2147483648
|
||||
pkg math (windows-amd64), const MaxInt = 9223372036854775807
|
||||
pkg math (windows-amd64), const MaxUint = 18446744073709551615
|
||||
pkg math (windows-amd64), const MinInt = -9223372036854775808
|
||||
pkg math, const MaxFloat64 = 1.79769e+308 // 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368
|
||||
pkg math, const MaxInt = 9223372036854775807
|
||||
pkg math, const MaxInt ideal-int
|
||||
pkg math, const MaxUint = 18446744073709551615
|
||||
pkg math, const MaxUint ideal-int
|
||||
pkg math, const MinInt = -9223372036854775808
|
||||
pkg math, const MinInt ideal-int
|
||||
pkg math, const SmallestNonzeroFloat32 = 1.4013e-45 // 1/713623846352979940529142984724747568191373312
|
||||
pkg math, const SmallestNonzeroFloat64 = 4.94066e-324 // 1/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784
|
||||
|
||||
233
api/go1.18.txt
233
api/go1.18.txt
@@ -1,233 +0,0 @@
|
||||
pkg bufio, method (*Writer) AvailableBuffer() []uint8
|
||||
pkg bufio, method (ReadWriter) AvailableBuffer() []uint8
|
||||
pkg bytes, func Cut([]uint8, []uint8) ([]uint8, []uint8, bool)
|
||||
pkg crypto/tls, method (*Conn) NetConn() net.Conn
|
||||
pkg debug/buildinfo, func Read(io.ReaderAt) (*debug.BuildInfo, error)
|
||||
pkg debug/buildinfo, func ReadFile(string) (*debug.BuildInfo, error)
|
||||
pkg debug/buildinfo, type BuildInfo = debug.BuildInfo
|
||||
pkg debug/elf, const R_PPC64_RELATIVE = 22
|
||||
pkg debug/elf, const R_PPC64_RELATIVE R_PPC64
|
||||
pkg debug/dwarf, type BasicType struct, DataBitOffset int64
|
||||
pkg debug/dwarf, type StructField struct, DataBitOffset int64
|
||||
pkg debug/plan9obj, var ErrNoSymbols error
|
||||
pkg go/ast, method (*IndexListExpr) End() token.Pos
|
||||
pkg go/ast, method (*IndexListExpr) Pos() token.Pos
|
||||
pkg go/ast, type FuncType struct, TypeParams *FieldList
|
||||
pkg go/ast, type IndexListExpr struct
|
||||
pkg go/ast, type IndexListExpr struct, Indices []Expr
|
||||
pkg go/ast, type IndexListExpr struct, Lbrack token.Pos
|
||||
pkg go/ast, type IndexListExpr struct, Rbrack token.Pos
|
||||
pkg go/ast, type IndexListExpr struct, X Expr
|
||||
pkg go/ast, type TypeSpec struct, TypeParams *FieldList
|
||||
pkg go/constant, method (Kind) String() string
|
||||
pkg go/token, const TILDE = 88
|
||||
pkg go/token, const TILDE Token
|
||||
pkg go/types, func Instantiate(*Context, Type, []Type, bool) (Type, error)
|
||||
pkg go/types, func NewContext() *Context
|
||||
pkg go/types, func NewSignatureType(*Var, []*TypeParam, []*TypeParam, *Tuple, *Tuple, bool) *Signature
|
||||
pkg go/types, func NewTerm(bool, Type) *Term
|
||||
pkg go/types, func NewTypeParam(*TypeName, Type) *TypeParam
|
||||
pkg go/types, func NewUnion([]*Term) *Union
|
||||
pkg go/types, method (*ArgumentError) Error() string
|
||||
pkg go/types, method (*ArgumentError) Unwrap() error
|
||||
pkg go/types, method (*Interface) IsComparable() bool
|
||||
pkg go/types, method (*Interface) IsImplicit() bool
|
||||
pkg go/types, method (*Interface) IsMethodSet() bool
|
||||
pkg go/types, method (*Interface) MarkImplicit()
|
||||
pkg go/types, method (*Named) Origin() *Named
|
||||
pkg go/types, method (*Named) SetTypeParams([]*TypeParam)
|
||||
pkg go/types, method (*Named) TypeArgs() *TypeList
|
||||
pkg go/types, method (*Named) TypeParams() *TypeParamList
|
||||
pkg go/types, method (*Signature) RecvTypeParams() *TypeParamList
|
||||
pkg go/types, method (*Signature) TypeParams() *TypeParamList
|
||||
pkg go/types, method (*Term) String() string
|
||||
pkg go/types, method (*Term) Tilde() bool
|
||||
pkg go/types, method (*Term) Type() Type
|
||||
pkg go/types, method (*TypeList) At(int) Type
|
||||
pkg go/types, method (*TypeList) Len() int
|
||||
pkg go/types, method (*TypeParam) Constraint() Type
|
||||
pkg go/types, method (*TypeParam) Index() int
|
||||
pkg go/types, method (*TypeParam) Obj() *TypeName
|
||||
pkg go/types, method (*TypeParam) SetConstraint(Type)
|
||||
pkg go/types, method (*TypeParam) String() string
|
||||
pkg go/types, method (*TypeParam) Underlying() Type
|
||||
pkg go/types, method (*TypeParamList) At(int) *TypeParam
|
||||
pkg go/types, method (*TypeParamList) Len() int
|
||||
pkg go/types, method (*Union) Len() int
|
||||
pkg go/types, method (*Union) String() string
|
||||
pkg go/types, method (*Union) Term(int) *Term
|
||||
pkg go/types, method (*Union) Underlying() Type
|
||||
pkg go/types, type ArgumentError struct
|
||||
pkg go/types, type ArgumentError struct, Err error
|
||||
pkg go/types, type ArgumentError struct, Index int
|
||||
pkg go/types, type Config struct, Context *Context
|
||||
pkg go/types, type Config struct, GoVersion string
|
||||
pkg go/types, type Context struct
|
||||
pkg go/types, type Info struct, Instances map[*ast.Ident]Instance
|
||||
pkg go/types, type Instance struct
|
||||
pkg go/types, type Instance struct, Type Type
|
||||
pkg go/types, type Instance struct, TypeArgs *TypeList
|
||||
pkg go/types, type Term struct
|
||||
pkg go/types, type TypeList struct
|
||||
pkg go/types, type TypeParam struct
|
||||
pkg go/types, type TypeParamList struct
|
||||
pkg go/types, type Union struct
|
||||
pkg net, func TCPAddrFromAddrPort(netip.AddrPort) *TCPAddr
|
||||
pkg net, func UDPAddrFromAddrPort(netip.AddrPort) *UDPAddr
|
||||
pkg net, method (*Resolver) LookupNetIP(context.Context, string, string) ([]netip.Addr, error)
|
||||
pkg net, method (*TCPAddr) AddrPort() netip.AddrPort
|
||||
pkg net, method (*UDPAddr) AddrPort() netip.AddrPort
|
||||
pkg net, method (*UDPConn) ReadFromUDPAddrPort([]uint8) (int, netip.AddrPort, error)
|
||||
pkg net, method (*UDPConn) ReadMsgUDPAddrPort([]uint8, []uint8) (int, int, int, netip.AddrPort, error)
|
||||
pkg net, method (*UDPConn) WriteMsgUDPAddrPort([]uint8, []uint8, netip.AddrPort) (int, int, error)
|
||||
pkg net, method (*UDPConn) WriteToUDPAddrPort([]uint8, netip.AddrPort) (int, error)
|
||||
pkg net/http, func MaxBytesHandler(Handler, int64) Handler
|
||||
pkg net/http, method (*Cookie) Valid() error
|
||||
pkg net/netip, func AddrFrom16([16]uint8) Addr
|
||||
pkg net/netip, func AddrFrom4([4]uint8) Addr
|
||||
pkg net/netip, func AddrFromSlice([]uint8) (Addr, bool)
|
||||
pkg net/netip, func AddrPortFrom(Addr, uint16) AddrPort
|
||||
pkg net/netip, func IPv4Unspecified() Addr
|
||||
pkg net/netip, func IPv6LinkLocalAllNodes() Addr
|
||||
pkg net/netip, func IPv6Unspecified() Addr
|
||||
pkg net/netip, func MustParseAddr(string) Addr
|
||||
pkg net/netip, func MustParseAddrPort(string) AddrPort
|
||||
pkg net/netip, func MustParsePrefix(string) Prefix
|
||||
pkg net/netip, func ParseAddr(string) (Addr, error)
|
||||
pkg net/netip, func ParseAddrPort(string) (AddrPort, error)
|
||||
pkg net/netip, func ParsePrefix(string) (Prefix, error)
|
||||
pkg net/netip, func PrefixFrom(Addr, int) Prefix
|
||||
pkg net/netip, method (*Addr) UnmarshalBinary([]uint8) error
|
||||
pkg net/netip, method (*Addr) UnmarshalText([]uint8) error
|
||||
pkg net/netip, method (*AddrPort) UnmarshalBinary([]uint8) error
|
||||
pkg net/netip, method (*AddrPort) UnmarshalText([]uint8) error
|
||||
pkg net/netip, method (*Prefix) UnmarshalBinary([]uint8) error
|
||||
pkg net/netip, method (*Prefix) UnmarshalText([]uint8) error
|
||||
pkg net/netip, method (Addr) AppendTo([]uint8) []uint8
|
||||
pkg net/netip, method (Addr) As16() [16]uint8
|
||||
pkg net/netip, method (Addr) As4() [4]uint8
|
||||
pkg net/netip, method (Addr) AsSlice() []uint8
|
||||
pkg net/netip, method (Addr) BitLen() int
|
||||
pkg net/netip, method (Addr) Compare(Addr) int
|
||||
pkg net/netip, method (Addr) Is4() bool
|
||||
pkg net/netip, method (Addr) Is4In6() bool
|
||||
pkg net/netip, method (Addr) Is6() bool
|
||||
pkg net/netip, method (Addr) IsGlobalUnicast() bool
|
||||
pkg net/netip, method (Addr) IsInterfaceLocalMulticast() bool
|
||||
pkg net/netip, method (Addr) IsLinkLocalMulticast() bool
|
||||
pkg net/netip, method (Addr) IsLinkLocalUnicast() bool
|
||||
pkg net/netip, method (Addr) IsLoopback() bool
|
||||
pkg net/netip, method (Addr) IsMulticast() bool
|
||||
pkg net/netip, method (Addr) IsPrivate() bool
|
||||
pkg net/netip, method (Addr) IsUnspecified() bool
|
||||
pkg net/netip, method (Addr) IsValid() bool
|
||||
pkg net/netip, method (Addr) Less(Addr) bool
|
||||
pkg net/netip, method (Addr) MarshalBinary() ([]uint8, error)
|
||||
pkg net/netip, method (Addr) MarshalText() ([]uint8, error)
|
||||
pkg net/netip, method (Addr) Next() Addr
|
||||
pkg net/netip, method (Addr) Prefix(int) (Prefix, error)
|
||||
pkg net/netip, method (Addr) Prev() Addr
|
||||
pkg net/netip, method (Addr) String() string
|
||||
pkg net/netip, method (Addr) StringExpanded() string
|
||||
pkg net/netip, method (Addr) Unmap() Addr
|
||||
pkg net/netip, method (Addr) WithZone(string) Addr
|
||||
pkg net/netip, method (Addr) Zone() string
|
||||
pkg net/netip, method (AddrPort) Addr() Addr
|
||||
pkg net/netip, method (AddrPort) AppendTo([]uint8) []uint8
|
||||
pkg net/netip, method (AddrPort) IsValid() bool
|
||||
pkg net/netip, method (AddrPort) MarshalBinary() ([]uint8, error)
|
||||
pkg net/netip, method (AddrPort) MarshalText() ([]uint8, error)
|
||||
pkg net/netip, method (AddrPort) Port() uint16
|
||||
pkg net/netip, method (AddrPort) String() string
|
||||
pkg net/netip, method (Prefix) Addr() Addr
|
||||
pkg net/netip, method (Prefix) AppendTo([]uint8) []uint8
|
||||
pkg net/netip, method (Prefix) Bits() int
|
||||
pkg net/netip, method (Prefix) Contains(Addr) bool
|
||||
pkg net/netip, method (Prefix) IsSingleIP() bool
|
||||
pkg net/netip, method (Prefix) IsValid() bool
|
||||
pkg net/netip, method (Prefix) MarshalBinary() ([]uint8, error)
|
||||
pkg net/netip, method (Prefix) MarshalText() ([]uint8, error)
|
||||
pkg net/netip, method (Prefix) Masked() Prefix
|
||||
pkg net/netip, method (Prefix) Overlaps(Prefix) bool
|
||||
pkg net/netip, method (Prefix) String() string
|
||||
pkg net/netip, type Addr struct
|
||||
pkg net/netip, type AddrPort struct
|
||||
pkg net/netip, type Prefix struct
|
||||
pkg reflect, const Pointer = 22
|
||||
pkg reflect, const Pointer Kind
|
||||
pkg reflect, func PointerTo(Type) Type
|
||||
pkg reflect, method (*MapIter) Reset(Value)
|
||||
pkg reflect, method (Value) CanComplex() bool
|
||||
pkg reflect, method (Value) CanFloat() bool
|
||||
pkg reflect, method (Value) CanInt() bool
|
||||
pkg reflect, method (Value) CanUint() bool
|
||||
pkg reflect, method (Value) FieldByIndexErr([]int) (Value, error)
|
||||
pkg reflect, method (Value) SetIterKey(*MapIter)
|
||||
pkg reflect, method (Value) SetIterValue(*MapIter)
|
||||
pkg reflect, method (Value) UnsafePointer() unsafe.Pointer
|
||||
pkg runtime/debug, func ParseBuildInfo(string) (*BuildInfo, error)
|
||||
pkg runtime/debug, method (*BuildInfo) String() string
|
||||
pkg runtime/debug, type BuildInfo struct, GoVersion string
|
||||
pkg runtime/debug, type BuildInfo struct, Settings []BuildSetting
|
||||
pkg runtime/debug, type BuildSetting struct
|
||||
pkg runtime/debug, type BuildSetting struct, Key string
|
||||
pkg runtime/debug, type BuildSetting struct, Value string
|
||||
pkg strings, func Clone(string) string
|
||||
pkg strings, func Cut(string, string) (string, string, bool)
|
||||
pkg sync, method (*Mutex) TryLock() bool
|
||||
pkg sync, method (*RWMutex) TryLock() bool
|
||||
pkg sync, method (*RWMutex) TryRLock() bool
|
||||
pkg syscall (freebsd-386), type SysProcAttr struct, Pdeathsig Signal
|
||||
pkg syscall (freebsd-386-cgo), type SysProcAttr struct, Pdeathsig Signal
|
||||
pkg syscall (freebsd-amd64), type SysProcAttr struct, Pdeathsig Signal
|
||||
pkg syscall (freebsd-amd64-cgo), type SysProcAttr struct, Pdeathsig Signal
|
||||
pkg syscall (freebsd-arm), type SysProcAttr struct, Pdeathsig Signal
|
||||
pkg syscall (freebsd-arm-cgo), type SysProcAttr struct, Pdeathsig Signal
|
||||
pkg syscall (windows-386), func SyscallN(uintptr, ...uintptr) (uintptr, uintptr, Errno)
|
||||
pkg syscall (windows-amd64), func SyscallN(uintptr, ...uintptr) (uintptr, uintptr, Errno)
|
||||
pkg testing, func MainStart(testDeps, []InternalTest, []InternalBenchmark, []InternalFuzzTarget, []InternalExample) *M
|
||||
pkg testing, method (*F) Add(...interface{})
|
||||
pkg testing, method (*F) Cleanup(func())
|
||||
pkg testing, method (*F) Error(...interface{})
|
||||
pkg testing, method (*F) Errorf(string, ...interface{})
|
||||
pkg testing, method (*F) Fail()
|
||||
pkg testing, method (*F) FailNow()
|
||||
pkg testing, method (*F) Failed() bool
|
||||
pkg testing, method (*F) Fatal(...interface{})
|
||||
pkg testing, method (*F) Fatalf(string, ...interface{})
|
||||
pkg testing, method (*F) Fuzz(interface{})
|
||||
pkg testing, method (*F) Helper()
|
||||
pkg testing, method (*F) Log(...interface{})
|
||||
pkg testing, method (*F) Logf(string, ...interface{})
|
||||
pkg testing, method (*F) Name() string
|
||||
pkg testing, method (*F) Setenv(string, string)
|
||||
pkg testing, method (*F) Skip(...interface{})
|
||||
pkg testing, method (*F) SkipNow()
|
||||
pkg testing, method (*F) Skipf(string, ...interface{})
|
||||
pkg testing, method (*F) Skipped() bool
|
||||
pkg testing, method (*F) TempDir() string
|
||||
pkg testing, type F struct
|
||||
pkg testing, type InternalFuzzTarget struct
|
||||
pkg testing, type InternalFuzzTarget struct, Fn func(*F)
|
||||
pkg testing, type InternalFuzzTarget struct, Name string
|
||||
pkg text/template/parse, const NodeBreak = 21
|
||||
pkg text/template/parse, const NodeBreak NodeType
|
||||
pkg text/template/parse, const NodeContinue = 22
|
||||
pkg text/template/parse, const NodeContinue NodeType
|
||||
pkg text/template/parse, method (*BreakNode) Copy() Node
|
||||
pkg text/template/parse, method (*BreakNode) String() string
|
||||
pkg text/template/parse, method (*ContinueNode) Copy() Node
|
||||
pkg text/template/parse, method (*ContinueNode) String() string
|
||||
pkg text/template/parse, method (BreakNode) Position() Pos
|
||||
pkg text/template/parse, method (BreakNode) Type() NodeType
|
||||
pkg text/template/parse, method (ContinueNode) Position() Pos
|
||||
pkg text/template/parse, method (ContinueNode) Type() NodeType
|
||||
pkg text/template/parse, type BreakNode struct
|
||||
pkg text/template/parse, type BreakNode struct, Line int
|
||||
pkg text/template/parse, type BreakNode struct, embedded NodeType
|
||||
pkg text/template/parse, type BreakNode struct, embedded Pos
|
||||
pkg text/template/parse, type ContinueNode struct
|
||||
pkg text/template/parse, type ContinueNode struct, Line int
|
||||
pkg text/template/parse, type ContinueNode struct, embedded NodeType
|
||||
pkg text/template/parse, type ContinueNode struct, embedded Pos
|
||||
pkg unicode/utf8, func AppendRune([]uint8, int32) []uint8
|
||||
@@ -7,6 +7,7 @@ pkg crypto, const BLAKE2b_512 Hash
|
||||
pkg crypto, const BLAKE2s_256 = 16
|
||||
pkg crypto, const BLAKE2s_256 Hash
|
||||
pkg crypto/x509, type Certificate struct, ExcludedDNSDomains []string
|
||||
pkg crypto/x509, type VerifyOptions struct, IsBoring func(*Certificate) bool
|
||||
pkg database/sql, method (*Conn) BeginTx(context.Context, *TxOptions) (*Tx, error)
|
||||
pkg database/sql, method (*Conn) Close() error
|
||||
pkg database/sql, method (*Conn) ExecContext(context.Context, string, ...interface{}) (Result, error)
|
||||
@@ -49,34 +50,7 @@ pkg image/png, type EncoderBufferPool interface, Put(*EncoderBuffer)
|
||||
pkg math/big, method (*Int) IsInt64() bool
|
||||
pkg math/big, method (*Int) IsUint64() bool
|
||||
pkg math/big, type Word uint
|
||||
pkg math/bits (darwin-amd64), const UintSize = 64
|
||||
pkg math/bits (darwin-amd64-cgo), const UintSize = 64
|
||||
pkg math/bits (freebsd-386), const UintSize = 32
|
||||
pkg math/bits (freebsd-386-cgo), const UintSize = 32
|
||||
pkg math/bits (freebsd-amd64), const UintSize = 64
|
||||
pkg math/bits (freebsd-amd64-cgo), const UintSize = 64
|
||||
pkg math/bits (freebsd-arm), const UintSize = 32
|
||||
pkg math/bits (freebsd-arm-cgo), const UintSize = 32
|
||||
pkg math/bits (linux-386), const UintSize = 32
|
||||
pkg math/bits (linux-386-cgo), const UintSize = 32
|
||||
pkg math/bits (linux-amd64), const UintSize = 64
|
||||
pkg math/bits (linux-amd64-cgo), const UintSize = 64
|
||||
pkg math/bits (linux-arm), const UintSize = 32
|
||||
pkg math/bits (linux-arm-cgo), const UintSize = 32
|
||||
pkg math/bits (netbsd-386), const UintSize = 32
|
||||
pkg math/bits (netbsd-386-cgo), const UintSize = 32
|
||||
pkg math/bits (netbsd-amd64), const UintSize = 64
|
||||
pkg math/bits (netbsd-amd64-cgo), const UintSize = 64
|
||||
pkg math/bits (netbsd-arm), const UintSize = 32
|
||||
pkg math/bits (netbsd-arm-cgo), const UintSize = 32
|
||||
pkg math/bits (netbsd-arm64), const UintSize = 64
|
||||
pkg math/bits (netbsd-arm64-cgo), const UintSize = 64
|
||||
pkg math/bits (openbsd-386), const UintSize = 32
|
||||
pkg math/bits (openbsd-386-cgo), const UintSize = 32
|
||||
pkg math/bits (openbsd-amd64), const UintSize = 64
|
||||
pkg math/bits (openbsd-amd64-cgo), const UintSize = 64
|
||||
pkg math/bits (windows-386), const UintSize = 32
|
||||
pkg math/bits (windows-amd64), const UintSize = 64
|
||||
pkg math/bits, const UintSize = 64
|
||||
pkg math/bits, const UintSize ideal-int
|
||||
pkg math/bits, func LeadingZeros(uint) int
|
||||
pkg math/bits, func LeadingZeros16(uint16) int
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
pkg net/http, type MaxBytesError struct #30715
|
||||
pkg net/http, type MaxBytesError struct, Limit int64 #30715
|
||||
pkg net/http, method (*MaxBytesError) Error() string #30715
|
||||
@@ -1 +0,0 @@
|
||||
pkg crypto/x509, method (*CertPool) Clone() *CertPool #35044
|
||||
@@ -1,2 +0,0 @@
|
||||
pkg hash/maphash, func Bytes(Seed, []uint8) uint64 #42710
|
||||
pkg hash/maphash, func String(Seed, string) uint64 #42710
|
||||
@@ -1 +0,0 @@
|
||||
pkg encoding/xml, method (*Decoder) InputPos() (int, int) #45628
|
||||
@@ -1,2 +0,0 @@
|
||||
pkg flag, func TextVar(encoding.TextUnmarshaler, string, encoding.TextMarshaler, string) #45754
|
||||
pkg flag, method (*FlagSet) TextVar(encoding.TextUnmarshaler, string, encoding.TextMarshaler, string) #45754
|
||||
@@ -1 +0,0 @@
|
||||
pkg crypto/x509, method (*CertPool) Equal(*CertPool) bool #46057
|
||||
@@ -1,2 +0,0 @@
|
||||
pkg net/url, type URL struct, OmitHost bool #46059
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
pkg html/template, method (*Template) Funcs(template.FuncMap) *Template #46121
|
||||
pkg html/template, type FuncMap = template.FuncMap #46121
|
||||
@@ -1,105 +0,0 @@
|
||||
pkg debug/elf, const EM_LOONGARCH = 258 #46229
|
||||
pkg debug/elf, const EM_LOONGARCH Machine #46229
|
||||
pkg debug/elf, const R_LARCH_32 = 1 #46229
|
||||
pkg debug/elf, const R_LARCH_32 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_64 = 2 #46229
|
||||
pkg debug/elf, const R_LARCH_64 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_ADD16 = 48 #46229
|
||||
pkg debug/elf, const R_LARCH_ADD16 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_ADD24 = 49 #46229
|
||||
pkg debug/elf, const R_LARCH_ADD24 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_ADD32 = 50 #46229
|
||||
pkg debug/elf, const R_LARCH_ADD32 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_ADD64 = 51 #46229
|
||||
pkg debug/elf, const R_LARCH_ADD64 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_ADD8 = 47 #46229
|
||||
pkg debug/elf, const R_LARCH_ADD8 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_COPY = 4 #46229
|
||||
pkg debug/elf, const R_LARCH_COPY R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_IRELATIVE = 12 #46229
|
||||
pkg debug/elf, const R_LARCH_IRELATIVE R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_JUMP_SLOT = 5 #46229
|
||||
pkg debug/elf, const R_LARCH_JUMP_SLOT R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_MARK_LA = 20 #46229
|
||||
pkg debug/elf, const R_LARCH_MARK_LA R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_MARK_PCREL = 21 #46229
|
||||
pkg debug/elf, const R_LARCH_MARK_PCREL R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_NONE = 0 #46229
|
||||
pkg debug/elf, const R_LARCH_NONE R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_RELATIVE = 3 #46229
|
||||
pkg debug/elf, const R_LARCH_RELATIVE R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_ADD = 35 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_ADD R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_AND = 36 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_AND R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_ASSERT = 30 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_ASSERT R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_IF_ELSE = 37 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_IF_ELSE R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_NOT = 31 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_NOT R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_0_10_10_16_S2 = 45 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_0_10_10_16_S2 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_0_5_10_16_S2 = 44 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_0_5_10_16_S2 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_10_12 = 40 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_10_12 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_10_16 = 41 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_10_16 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_10_16_S2 = 42 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_10_16_S2 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_10_5 = 38 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_10_5 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_5_20 = 43 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_S_5_20 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_U = 46 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_U R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_U_10_12 = 39 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_POP_32_U_10_12 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_ABSOLUTE = 23 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_ABSOLUTE R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_DUP = 24 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_DUP R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_GPREL = 25 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_GPREL R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_PCREL = 22 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_PCREL R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_PLT_PCREL = 29 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_PLT_PCREL R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_TLS_GD = 28 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_TLS_GD R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_TLS_GOT = 27 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_TLS_GOT R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_TLS_TPREL = 26 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_PUSH_TLS_TPREL R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_SL = 33 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_SL R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_SR = 34 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_SR R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_SUB = 32 #46229
|
||||
pkg debug/elf, const R_LARCH_SOP_SUB R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SUB16 = 53 #46229
|
||||
pkg debug/elf, const R_LARCH_SUB16 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SUB24 = 54 #46229
|
||||
pkg debug/elf, const R_LARCH_SUB24 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SUB32 = 55 #46229
|
||||
pkg debug/elf, const R_LARCH_SUB32 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SUB64 = 56 #46229
|
||||
pkg debug/elf, const R_LARCH_SUB64 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_SUB8 = 52 #46229
|
||||
pkg debug/elf, const R_LARCH_SUB8 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_DTPMOD32 = 6 #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_DTPMOD32 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_DTPMOD64 = 7 #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_DTPMOD64 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_DTPREL32 = 8 #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_DTPREL32 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_DTPREL64 = 9 #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_DTPREL64 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_TPREL32 = 10 #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_TPREL32 R_LARCH #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_TPREL64 = 11 #46229
|
||||
pkg debug/elf, const R_LARCH_TLS_TPREL64 R_LARCH #46229
|
||||
pkg debug/elf, method (R_LARCH) GoString() string #46229
|
||||
pkg debug/elf, method (R_LARCH) String() string #46229
|
||||
pkg debug/elf, type R_LARCH int #46229
|
||||
@@ -1,2 +0,0 @@
|
||||
pkg net/url, func JoinPath(string, ...string) (string, error) #47005
|
||||
pkg net/url, method (*URL) JoinPath(...string) *URL #47005
|
||||
@@ -1 +0,0 @@
|
||||
pkg sort, func Find(int, func(int) int) (int, bool) #50340
|
||||
@@ -1 +0,0 @@
|
||||
pkg os/exec, method (*Cmd) Environ() []string #50599
|
||||
@@ -1,5 +0,0 @@
|
||||
pkg encoding/binary, type AppendByteOrder interface { AppendUint16, AppendUint32, AppendUint64, String } #50601
|
||||
pkg encoding/binary, type AppendByteOrder interface, AppendUint16([]uint8, uint16) []uint8 #50601
|
||||
pkg encoding/binary, type AppendByteOrder interface, AppendUint32([]uint8, uint32) []uint8 #50601
|
||||
pkg encoding/binary, type AppendByteOrder interface, AppendUint64([]uint8, uint64) []uint8 #50601
|
||||
pkg encoding/binary, type AppendByteOrder interface, String() string #50601
|
||||
@@ -1,9 +0,0 @@
|
||||
pkg crypto/x509, func ParseRevocationList([]uint8) (*RevocationList, error) #50674
|
||||
pkg crypto/x509, method (*RevocationList) CheckSignatureFrom(*Certificate) error #50674
|
||||
pkg crypto/x509, type RevocationList struct, AuthorityKeyId []uint8 #50674
|
||||
pkg crypto/x509, type RevocationList struct, Extensions []pkix.Extension #50674
|
||||
pkg crypto/x509, type RevocationList struct, Issuer pkix.Name #50674
|
||||
pkg crypto/x509, type RevocationList struct, Raw []uint8 #50674
|
||||
pkg crypto/x509, type RevocationList struct, RawIssuer []uint8 #50674
|
||||
pkg crypto/x509, type RevocationList struct, RawTBSRevocationList []uint8 #50674
|
||||
pkg crypto/x509, type RevocationList struct, Signature []uint8 #50674
|
||||
@@ -1,61 +0,0 @@
|
||||
pkg go/doc, method (*Package) HTML(string) []uint8 #51082
|
||||
pkg go/doc, method (*Package) Markdown(string) []uint8 #51082
|
||||
pkg go/doc, method (*Package) Parser() *comment.Parser #51082
|
||||
pkg go/doc, method (*Package) Printer() *comment.Printer #51082
|
||||
pkg go/doc, method (*Package) Synopsis(string) string #51082
|
||||
pkg go/doc, method (*Package) Text(string) []uint8 #51082
|
||||
pkg go/doc/comment, func DefaultLookupPackage(string) (string, bool) #51082
|
||||
pkg go/doc/comment, method (*DocLink) DefaultURL(string) string #51082
|
||||
pkg go/doc/comment, method (*Heading) DefaultID() string #51082
|
||||
pkg go/doc/comment, method (*List) BlankBefore() bool #51082
|
||||
pkg go/doc/comment, method (*List) BlankBetween() bool #51082
|
||||
pkg go/doc/comment, method (*Parser) Parse(string) *Doc #51082
|
||||
pkg go/doc/comment, method (*Printer) Comment(*Doc) []uint8 #51082
|
||||
pkg go/doc/comment, method (*Printer) HTML(*Doc) []uint8 #51082
|
||||
pkg go/doc/comment, method (*Printer) Markdown(*Doc) []uint8 #51082
|
||||
pkg go/doc/comment, method (*Printer) Text(*Doc) []uint8 #51082
|
||||
pkg go/doc/comment, type Block interface, unexported methods #51082
|
||||
pkg go/doc/comment, type Code struct #51082
|
||||
pkg go/doc/comment, type Code struct, Text string #51082
|
||||
pkg go/doc/comment, type Doc struct #51082
|
||||
pkg go/doc/comment, type Doc struct, Content []Block #51082
|
||||
pkg go/doc/comment, type Doc struct, Links []*LinkDef #51082
|
||||
pkg go/doc/comment, type DocLink struct #51082
|
||||
pkg go/doc/comment, type DocLink struct, ImportPath string #51082
|
||||
pkg go/doc/comment, type DocLink struct, Name string #51082
|
||||
pkg go/doc/comment, type DocLink struct, Recv string #51082
|
||||
pkg go/doc/comment, type DocLink struct, Text []Text #51082
|
||||
pkg go/doc/comment, type Heading struct #51082
|
||||
pkg go/doc/comment, type Heading struct, Text []Text #51082
|
||||
pkg go/doc/comment, type Italic string #51082
|
||||
pkg go/doc/comment, type Link struct #51082
|
||||
pkg go/doc/comment, type Link struct, Auto bool #51082
|
||||
pkg go/doc/comment, type Link struct, Text []Text #51082
|
||||
pkg go/doc/comment, type Link struct, URL string #51082
|
||||
pkg go/doc/comment, type LinkDef struct #51082
|
||||
pkg go/doc/comment, type LinkDef struct, Text string #51082
|
||||
pkg go/doc/comment, type LinkDef struct, URL string #51082
|
||||
pkg go/doc/comment, type LinkDef struct, Used bool #51082
|
||||
pkg go/doc/comment, type List struct #51082
|
||||
pkg go/doc/comment, type List struct, ForceBlankBefore bool #51082
|
||||
pkg go/doc/comment, type List struct, ForceBlankBetween bool #51082
|
||||
pkg go/doc/comment, type List struct, Items []*ListItem #51082
|
||||
pkg go/doc/comment, type ListItem struct #51082
|
||||
pkg go/doc/comment, type ListItem struct, Content []Block #51082
|
||||
pkg go/doc/comment, type ListItem struct, Number string #51082
|
||||
pkg go/doc/comment, type Paragraph struct #51082
|
||||
pkg go/doc/comment, type Paragraph struct, Text []Text #51082
|
||||
pkg go/doc/comment, type Parser struct #51082
|
||||
pkg go/doc/comment, type Parser struct, LookupPackage func(string) (string, bool) #51082
|
||||
pkg go/doc/comment, type Parser struct, LookupSym func(string, string) bool #51082
|
||||
pkg go/doc/comment, type Parser struct, Words map[string]string #51082
|
||||
pkg go/doc/comment, type Plain string #51082
|
||||
pkg go/doc/comment, type Printer struct #51082
|
||||
pkg go/doc/comment, type Printer struct, DocLinkBaseURL string #51082
|
||||
pkg go/doc/comment, type Printer struct, DocLinkURL func(*DocLink) string #51082
|
||||
pkg go/doc/comment, type Printer struct, HeadingID func(*Heading) string #51082
|
||||
pkg go/doc/comment, type Printer struct, HeadingLevel int #51082
|
||||
pkg go/doc/comment, type Printer struct, TextCodePrefix string #51082
|
||||
pkg go/doc/comment, type Printer struct, TextPrefix string #51082
|
||||
pkg go/doc/comment, type Printer struct, TextWidth int #51082
|
||||
pkg go/doc/comment, type Text interface, unexported methods #51082
|
||||
@@ -1 +0,0 @@
|
||||
pkg time, method (Duration) Abs() Duration #51414
|
||||
@@ -1,2 +0,0 @@
|
||||
pkg encoding/binary, func AppendUvarint([]uint8, uint64) []uint8 #51644
|
||||
pkg encoding/binary, func AppendVarint([]uint8, int64) []uint8 #51644
|
||||
@@ -1,2 +0,0 @@
|
||||
pkg regexp/syntax, const ErrNestingDepth = "expression nests too deeply" #51684
|
||||
pkg regexp/syntax, const ErrNestingDepth ErrorCode #51684
|
||||
@@ -1,36 +0,0 @@
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_ANY = 2 #51686
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_ANY ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_ASSOCIATIVE = 5 #51686
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_ASSOCIATIVE ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_EXACT_MATCH = 4 #51686
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_EXACT_MATCH ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_LARGEST = 6 #51686
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_LARGEST ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_NODUPLICATES = 1 #51686
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_NODUPLICATES ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_SAME_SIZE = 3 #51686
|
||||
pkg debug/pe, const IMAGE_COMDAT_SELECT_SAME_SIZE ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_SCN_CNT_CODE = 32 #51686
|
||||
pkg debug/pe, const IMAGE_SCN_CNT_CODE ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_SCN_CNT_INITIALIZED_DATA = 64 #51686
|
||||
pkg debug/pe, const IMAGE_SCN_CNT_INITIALIZED_DATA ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_SCN_CNT_UNINITIALIZED_DATA = 128 #51686
|
||||
pkg debug/pe, const IMAGE_SCN_CNT_UNINITIALIZED_DATA ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_SCN_LNK_COMDAT = 4096 #51686
|
||||
pkg debug/pe, const IMAGE_SCN_LNK_COMDAT ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_SCN_MEM_DISCARDABLE = 33554432 #51686
|
||||
pkg debug/pe, const IMAGE_SCN_MEM_DISCARDABLE ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_SCN_MEM_EXECUTE = 536870912 #51686
|
||||
pkg debug/pe, const IMAGE_SCN_MEM_EXECUTE ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_SCN_MEM_READ = 1073741824 #51686
|
||||
pkg debug/pe, const IMAGE_SCN_MEM_READ ideal-int #51686
|
||||
pkg debug/pe, const IMAGE_SCN_MEM_WRITE = 2147483648 #51686
|
||||
pkg debug/pe, const IMAGE_SCN_MEM_WRITE ideal-int #51686
|
||||
pkg debug/pe, method (*File) COFFSymbolReadSectionDefAux(int) (*COFFSymbolAuxFormat5, error) #51686
|
||||
pkg debug/pe, type COFFSymbolAuxFormat5 struct #51686
|
||||
pkg debug/pe, type COFFSymbolAuxFormat5 struct, Checksum uint32 #51686
|
||||
pkg debug/pe, type COFFSymbolAuxFormat5 struct, NumLineNumbers uint16 #51686
|
||||
pkg debug/pe, type COFFSymbolAuxFormat5 struct, NumRelocs uint16 #51686
|
||||
pkg debug/pe, type COFFSymbolAuxFormat5 struct, SecNum uint16 #51686
|
||||
pkg debug/pe, type COFFSymbolAuxFormat5 struct, Selection uint8 #51686
|
||||
pkg debug/pe, type COFFSymbolAuxFormat5 struct, Size uint32 #51686
|
||||
@@ -1,2 +1 @@
|
||||
branch: dev.boringcrypto
|
||||
parent-branch: master
|
||||
branch: dev.boringcrypto.go1.17
|
||||
|
||||
@@ -125,8 +125,8 @@ it is a distinct program, so there are some differences.
|
||||
One is in constant evaluation.
|
||||
Constant expressions in the assembler are parsed using Go's operator
|
||||
precedence, not the C-like precedence of the original.
|
||||
Thus <code>3&1<<2</code> is 4, not 0—it parses as <code>(3&1)<<2</code>
|
||||
not <code>3&(1<<2)</code>.
|
||||
Thus <code>3&1<<2</code> is 4, not 0—it parses as <code>(3&1)<<2</code>
|
||||
not <code>3&(1<<2)</code>.
|
||||
Also, constants are always evaluated as 64-bit unsigned integers.
|
||||
Thus <code>-2</code> is not the integer value minus two,
|
||||
but the unsigned 64-bit integer with the same bit pattern.
|
||||
@@ -914,6 +914,8 @@ This assembler is used by GOARCH values ppc64 and ppc64le.
|
||||
Reference: <a href="/pkg/cmd/internal/obj/ppc64">Go PPC64 Assembly Instructions Reference Manual</a>
|
||||
</p>
|
||||
|
||||
</ul>
|
||||
|
||||
<h3 id="s390x">IBM z/Architecture, a.k.a. s390x</h3>
|
||||
|
||||
<p>
|
||||
|
||||
1240
doc/go1.17.html
Normal file
1240
doc/go1.17.html
Normal file
File diff suppressed because it is too large
Load Diff
6858
doc/go1.17_spec.html
6858
doc/go1.17_spec.html
File diff suppressed because it is too large
Load Diff
179
doc/go1.19.html
179
doc/go1.19.html
@@ -1,179 +0,0 @@
|
||||
<!--{
|
||||
"Title": "Go 1.19 Release Notes",
|
||||
"Path": "/doc/go1.19"
|
||||
}-->
|
||||
<!--
|
||||
NOTE: In this document and others in this directory, the convention is to
|
||||
set fixed-width phrases with non-fixed-width spaces, as in
|
||||
<code>hello</code> <code>world</code>.
|
||||
Do not send CLs removing the interior tags from such phrases.
|
||||
-->
|
||||
<style>
|
||||
main ul li { margin: 0.5em 0; }
|
||||
</style>
|
||||
<h2 id="introduction">DRAFT RELEASE NOTES — Introduction to Go 1.19</h2>
|
||||
<p>
|
||||
<strong>
|
||||
Go 1.19 is not yet released. These are work-in-progress
|
||||
release notes. Go 1.19 is expected to be released in August 2022.
|
||||
</strong>
|
||||
</p>
|
||||
<h2 id="language">Changes to the language</h2>
|
||||
<p>
|
||||
TODO: complete this section
|
||||
</p>
|
||||
<h2 id="ports">Ports</h2>
|
||||
<p>
|
||||
TODO: complete this section, or delete if not needed
|
||||
</p>
|
||||
<h2 id="tools">Tools</h2>
|
||||
<p>
|
||||
TODO: complete this section, or delete if not needed
|
||||
</p>
|
||||
<h3 id="go-command">Go command</h3>
|
||||
<p>
|
||||
TODO: complete this section.
|
||||
</p>
|
||||
|
||||
<!-- https://go.dev/issue/51461 -->
|
||||
<p>
|
||||
The <code>-trimpath</code> flag, if set, is now included in the build settings
|
||||
stamped into Go binaries by <code>go</code> <code>build</code>, and can be
|
||||
examined using
|
||||
<a href="https://pkg.go.dev/cmd/go#hdr-Print_Go_version"><code>go</code> <code>version</code> <code>-m</code></a>
|
||||
or <a href="https://pkg.go.dev/runtime/debug#ReadBuildInfo"><code>debug.ReadBuildInfo</code></a>.
|
||||
</p>
|
||||
<p>
|
||||
<code>go</code> <code>generate</code> now sets the <code>GOROOT</code>
|
||||
environment variable explicitly in the generator's environment, so that
|
||||
generators can locate the correct <code>GOROOT</code> even if built
|
||||
with <code>-trimpath</code>.
|
||||
</p>
|
||||
|
||||
<h4 id="go-unix">New <code>unix</code> build constraint</h4>
|
||||
|
||||
<p><!-- CL 389934 -->
|
||||
The build constraint <code>unix</code> is now recognized
|
||||
in <code>//go:build</code> lines. The constraint is satisfied
|
||||
if the target operating system, also known as <code>GOOS</code>, is
|
||||
a Unix or Unix-like system. For the 1.19 release it is satisfied
|
||||
if <code>GOOS</code> is one of
|
||||
<code>aix</code>, <code>android</code>, <code>darwin</code>,
|
||||
<code>dragonfly</code>, <code>freebsd</code>, <code>hurd</code>,
|
||||
<code>illumos</code>, <code>ios</code>, <code>linux</code>,
|
||||
<code>netbsd</code>, <code>openbsd</code>, or <code>solaris</code>.
|
||||
In future releases the <code>unix</code> constraint may match
|
||||
additional newly supported operating systems.
|
||||
</p>
|
||||
|
||||
<h2 id="runtime">Runtime</h2>
|
||||
<p>
|
||||
TODO: complete this section, or delete if not needed
|
||||
</p>
|
||||
<h2 id="compiler">Compiler</h2>
|
||||
<p>
|
||||
TODO: complete this section, or delete if not needed
|
||||
</p>
|
||||
<h2 id="linker">Linker</h2>
|
||||
<p>
|
||||
TODO: complete this section, or delete if not needed
|
||||
</p>
|
||||
<h2 id="library">Core library</h2>
|
||||
<p>
|
||||
TODO: complete this section
|
||||
</p>
|
||||
<h3 id="minor_library_changes">Minor changes to the library</h3>
|
||||
<p>
|
||||
As always, there are various minor changes and updates to the library,
|
||||
made with the Go 1 <a href="/doc/go1compat">promise of compatibility</a>
|
||||
in mind.
|
||||
</p>
|
||||
<p>
|
||||
TODO: complete this section
|
||||
</p>
|
||||
|
||||
<dl id="crypto/tls"><dt><a href="/pkg/crypto/tls/">crypto/tls</a></dt>
|
||||
<dd>
|
||||
<p><!-- CL 400974 -->
|
||||
The <code>tls10default</code> <code>GODEBUG</code> option has been
|
||||
removed. It is still possible to enable TLS 1.0 client-side by setting
|
||||
<code>Config.MinVersion</code>.
|
||||
</p>
|
||||
</dd>
|
||||
</dl><!-- crypto/tls -->
|
||||
|
||||
<dl id="image/draw"><dt><a href="/pkg/image/draw/">image/draw</a></dt>
|
||||
<dd>
|
||||
<p><!-- CL 396795 -->
|
||||
<code>Draw</code> with the <code>Src</code> operator preserves
|
||||
non-premultiplied-alpha colors when destination and source images are
|
||||
both <code>*image.NRGBA</code> (or both <code>*image.NRGBA64</code>).
|
||||
This reverts a behavior change accidentally introduced by a Go 1.18
|
||||
library optimization, to match the behavior in Go 1.17 and earlier.
|
||||
</p>
|
||||
</dd>
|
||||
</dl><!-- image/draw -->
|
||||
|
||||
<dl id="net"><dt><a href="/pkg/net/">net</a></dt>
|
||||
<dd>
|
||||
<p><!-- CL 386016 -->
|
||||
The pure Go resolver will now use EDNS(0) to include a suggested
|
||||
maximum reply packet length, permitting reply packets to contain
|
||||
up to 1232 bytes (the previous maximum was 512).
|
||||
In the unlikely event that this causes problems with a local DNS
|
||||
resolver, setting the environment variable
|
||||
<code>GODEBUG=netdns=cgo</code> to use the cgo-based resolver
|
||||
should work.
|
||||
Please report any such problems on <a href="/issue/new">the
|
||||
issue tracker</a>.
|
||||
</p>
|
||||
|
||||
<p><!-- CL 396877 -->
|
||||
When a net package function or method returns an "I/O timeout"
|
||||
error, the error will now satisfy <code>errors.Is(err,
|
||||
context.DeadlineExceeded)</code>. When a net package function
|
||||
returns an "operation was canceled" error, the error will now
|
||||
satisfy <code>errors.Is(err, context.Canceled)</code>.
|
||||
These changes are intended to make it easier for code to test
|
||||
for cases in which a context cancelation or timeout causes a net
|
||||
package function or method to return an error, while preserving
|
||||
backward compatibility for error messages.
|
||||
</p>
|
||||
</dd>
|
||||
</dl><!-- net -->
|
||||
|
||||
<dl id="os/exec"><dt><a href="/pkg/os/exec/">os/exec</a></dt>
|
||||
<dd><!-- https://go.dev/issue/50599 -->
|
||||
<p>
|
||||
An <code>exec.Cmd</code> with a non-empty <code>Dir</code> and a
|
||||
nil <code>Env</code> now implicitly sets the <code>PWD</code> environment
|
||||
variable for the subprocess to match <code>Dir</code>.
|
||||
</p>
|
||||
<p>
|
||||
The new method <code>(*exec.Cmd).Environ</code> reports the
|
||||
environment that would be used to run the command, including the
|
||||
aforementioned <code>PWD</code> variable.
|
||||
</p>
|
||||
</dd>
|
||||
</dl> <!-- os/exec -->
|
||||
|
||||
<dl id="runtime"><dt><a href="/pkg/runtime/">runtime</a></dt>
|
||||
<dd>
|
||||
<p><!-- https://go.dev/issue/51461 -->
|
||||
The <code>GOROOT</code> function now returns the empty string
|
||||
(instead of <code>"go"</code>) when the binary was built with
|
||||
the <code>-trimpath</code> flag set and the <code>GOROOT</code>
|
||||
variable is not set in the process environment.
|
||||
</p>
|
||||
</dd>
|
||||
</dl><!-- runtime -->
|
||||
|
||||
<dl id="strconv"><dt><a href="/pkg/strconv/">strconv</a></dt>
|
||||
<dd>
|
||||
<p><!-- CL 397255 -->
|
||||
<a href="/pkg/strconv/#strconv.Quote"><code>strconv.Quote</code></a>
|
||||
and related functions now quote the rune 007F as <code>\x7f</code>,
|
||||
not <code>\u007f</code>.
|
||||
</p>
|
||||
</dd>
|
||||
</dl><!-- strconv -->
|
||||
1693
doc/go_spec.html
1693
doc/go_spec.html
File diff suppressed because it is too large
Load Diff
@@ -4,7 +4,7 @@ The IANA asserts that the database is in the public domain.
|
||||
|
||||
For more information, see
|
||||
https://www.iana.org/time-zones
|
||||
ftp://ftp.iana.org/tz/code/tz-link.html
|
||||
https://datatracker.ietf.org/doc/html/rfc6557
|
||||
ftp://ftp.iana.org/tz/code/tz-link.htm
|
||||
http://tools.ietf.org/html/rfc6557
|
||||
|
||||
To rebuild the archive, read and run update.bash.
|
||||
|
||||
@@ -8,8 +8,8 @@
|
||||
# Consult https://www.iana.org/time-zones for the latest versions.
|
||||
|
||||
# Versions to use.
|
||||
CODE=2021e
|
||||
DATA=2021e
|
||||
CODE=2021a
|
||||
DATA=2021a
|
||||
|
||||
set -e
|
||||
rm -rf work
|
||||
|
||||
Binary file not shown.
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build ignore
|
||||
// +build ignore
|
||||
|
||||
// This program can be used as go_android_GOARCH_exec by the Go tool.
|
||||
|
||||
@@ -24,8 +24,8 @@ at `gs://go-boringcrypto/`, making it available for download at
|
||||
The script records each published release in the `RELEASES` file in this directory.
|
||||
|
||||
The `build.docker` script, which must be run after `build.release`, prepares a Docker image
|
||||
and publishes it on Google Artifact Registry.
|
||||
`go1.17.2b7` is published as `us-docker.pkg.dev/google.com/api-project-999119582588/go-boringcrypto/golang:1.17.2b7`.
|
||||
and publishes it on hub.docker.com in the goboring organization.
|
||||
`go1.8.3b1` is published as `goboring/golang:1.8.3b1`.
|
||||
|
||||
## Release process
|
||||
|
||||
@@ -56,8 +56,8 @@ To issue new BoringCrypto releases based on Go 1.X:
|
||||
|
||||
## Building from Docker
|
||||
|
||||
A Dockerfile that starts with `FROM golang:1.17.2` can switch
|
||||
to `FROM us-docker.pkg.dev/google.com/api-project-999119582588/go-boringcrypto/golang:1.17.2b7`
|
||||
A Dockerfile that starts with `FROM golang:1.8.3` can switch
|
||||
to `FROM goboring/golang:1.8.3b2` (see [goboring/golang on Docker Hub](https://hub.docker.com/r/goboring/golang/))
|
||||
and should need no other modifications.
|
||||
|
||||
## Building from Bazel
|
||||
|
||||
@@ -151,63 +151,3 @@ go1.15.15b5 dd96ded6c86b linux-amd64 https://go-boringcrypto.storage.googleapis.
|
||||
go1.15.15b5 dd96ded6c86b src https://go-boringcrypto.storage.googleapis.com/go1.15.15b5.src.tar.gz af2d44c8eef02e093c077c085fbe6964af0ca715f95f4bcea0809fa211cc4ded
|
||||
go1.16.7b7 0d02a0d966b6 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.16.7b7.linux-amd64.tar.gz d4ca2906640edd9299d12d8204aae0d848b497b79b92424d8705ae748e16f3c5
|
||||
go1.16.7b7 0d02a0d966b6 src https://go-boringcrypto.storage.googleapis.com/go1.16.7b7.src.tar.gz f65503abf459ba1d2f77d4d023fcebd19c62e7c34d3ffd0f1aebb598ffa153d9
|
||||
go1.16.9b7 35d5cd0dcfb9 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.16.9b7.linux-amd64.tar.gz 6659e3ea17474000d2ac2f4a887a4bac26ab8cf6a0b0779cbd41464a7de23645
|
||||
go1.16.9b7 35d5cd0dcfb9 src https://go-boringcrypto.storage.googleapis.com/go1.16.9b7.src.tar.gz 81a40da773e33230276446955f9ddc85c8ca121432d56842edad49212975a9bc
|
||||
go1.17.2b7 5f1867dc1e67 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.2b7.linux-amd64.tar.gz 60fd88def54b81e489ba2d2d80e5df32150ef1a62c0ece3ff869862141824c81
|
||||
go1.17.2b7 5f1867dc1e67 src https://go-boringcrypto.storage.googleapis.com/go1.17.2b7.src.tar.gz b00e746a053d5e70e27151b9461e5e3413c53bb88bc60e0db107a99284614d17
|
||||
go1.16.10b7 06a4b2790c5b linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.16.10b7.linux-amd64.tar.gz 9720316c7d91fa0b6a31678745ad68c52c92e4027751602449fb2309c0c3f1de
|
||||
go1.16.10b7 06a4b2790c5b src https://go-boringcrypto.storage.googleapis.com/go1.16.10b7.src.tar.gz 742e1e904d82cd7a17fade53ab9001f5f88b7a3ee9358c587811762fc07cdaa3
|
||||
go1.17.3b7 5a371e30afcb linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.3b7.linux-amd64.tar.gz a5216d1e7401c734b3e29e8aad3c8608f094ae7d37b55e8815211e25922e4d19
|
||||
go1.17.3b7 5a371e30afcb src https://go-boringcrypto.storage.googleapis.com/go1.17.3b7.src.tar.gz 858595a95faf4c730ebe3d40ecba1705b79f7bc2a996fd044cb30da8d9c57534
|
||||
go1.17.4b7 95e6359f6a5d linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.4b7.linux-amd64.tar.gz aa4a69709a08c7d83a6417f978a9e5f32207c0e9da82d39cceff7d9cdf657e59
|
||||
go1.17.4b7 95e6359f6a5d src https://go-boringcrypto.storage.googleapis.com/go1.17.4b7.src.tar.gz 0151f947e1da7a9cec63b06276b9ed4b92d2e5113ae254ebbdb9191b65c711f6
|
||||
go1.16.11b7 c884bd9ef2f1 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.16.11b7.linux-amd64.tar.gz 8edd1e42a88df0dbb99f1e1487149a856155f24711e19c17ba0f08d76254e2ca
|
||||
go1.16.11b7 c884bd9ef2f1 src https://go-boringcrypto.storage.googleapis.com/go1.16.11b7.src.tar.gz a50f8362af1e44011b342657cac80d817868c6d0f40a6d235c45abc81c16fb92
|
||||
go1.16.12b7 adecd3ffbec7 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.16.12b7.linux-amd64.tar.gz fd43c36e9bc926634c13e0dc3547046c55f3b5a2448473d8fb51c344ea726542
|
||||
go1.16.12b7 adecd3ffbec7 src https://go-boringcrypto.storage.googleapis.com/go1.16.12b7.src.tar.gz 891e21c67738b63b645ace56fbd3874ff9e8583865ee7907543ae43373411d64
|
||||
go1.17.5b7 dc52cfcd39cd linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.5b7.linux-amd64.tar.gz 92407bbc855fd05c5252a2ee2d4fcb6eb077cf64fd0d70da53ba7914c22ec1d7
|
||||
go1.17.5b7 dc52cfcd39cd src https://go-boringcrypto.storage.googleapis.com/go1.17.5b7.src.tar.gz 4c508aecce1b56e34a4e32605086994606c72010b7caedce7681c1019781c93e
|
||||
go1.16.13b7 bb93480d0093 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.16.13b7.linux-amd64.tar.gz cd98a2ea753edc9d0206b14b2d40d269ddaee1dea7bc59b91cb8a11fc575f738
|
||||
go1.16.13b7 bb93480d0093 src https://go-boringcrypto.storage.googleapis.com/go1.16.13b7.src.tar.gz e9f8f5f6769fed35924b364f2e1df8ad2fc491569189761047cec14ca5922ee1
|
||||
go1.17.6b7 cfad1ff84c45 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.6b7.linux-amd64.tar.gz 5b55a001fb80f9baaed621c2469977b9c9afe13b9afc6fd5712057856ab86f5d
|
||||
go1.17.6b7 cfad1ff84c45 src https://go-boringcrypto.storage.googleapis.com/go1.17.6b7.src.tar.gz 5178f595dea6d618f7cdf6b9e2346a1a28430b4d547996b766fcd5b34379ca2f
|
||||
go1.17.7b7 172559d22b5d linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.7b7.linux-amd64.tar.gz a69bf0516affb8678873ba40c4ddbc8e3b01bfa8460f5c5f356dd53049d54322
|
||||
go1.17.7b7 172559d22b5d src https://go-boringcrypto.storage.googleapis.com/go1.17.7b7.src.tar.gz eff84edf4f676c691ac21747277e15777789be32dcaa53a0779737b280351453
|
||||
go1.16.14b7 e90b835f3071 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.16.14b7.linux-amd64.tar.gz 5024e1231d33b9dfffdd7821132dd32eccd42e7415f25618dc8c7304b335edd9
|
||||
go1.16.14b7 e90b835f3071 src https://go-boringcrypto.storage.googleapis.com/go1.16.14b7.src.tar.gz caef2ef601bcc588e6bcb511087c9620200723a4c74191b725fbda94c3be884b
|
||||
go1.17.8b7 4ea866a9969f linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.8b7.linux-amd64.tar.gz 4a1fa2c8d77309e1ef5bafe7e80e75c06e70c0ae1212d9f3d95485017155491d
|
||||
go1.17.8b7 4ea866a9969f src https://go-boringcrypto.storage.googleapis.com/go1.17.8b7.src.tar.gz e42ac342c315d33c47434299a24f33137e7099f278ee6669404c4d7e49e17bcf
|
||||
go1.16.15b7 649671b08fbd linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.16.15b7.linux-amd64.tar.gz 4d62f517786266019c721c35330e23da123eb184eadb5a79379fe81d31d856db
|
||||
go1.16.15b7 649671b08fbd src https://go-boringcrypto.storage.googleapis.com/go1.16.15b7.src.tar.gz 54fc7f2ec0b72b0aaf7726eb5f7f57885252ef46c2c1ca238090cc57850e3ef7
|
||||
go1.18b7 0622ea4d9068 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.18b7.linux-amd64.tar.gz baa33bc66b8df97a3c5a328637b85f04d5629f139dc2df946c09ab7214510c61
|
||||
go1.18b7 0622ea4d9068 src https://go-boringcrypto.storage.googleapis.com/go1.18b7.src.tar.gz 6028ffee59903934a3182d45ee3e0c1c9f47fb98f05d9bbb2fabb4771db60792
|
||||
go1.18.1b7 d003f0850a7d linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.18.1b7.linux-amd64.tar.gz a5b3985341de6ca54f6a8e13e9ae695f0ee202207e25f082c3895a8fc6f89f64
|
||||
go1.18.1b7 d003f0850a7d src https://go-boringcrypto.storage.googleapis.com/go1.18.1b7.src.tar.gz c7f91549b3a197e4a08f64e07546855ca8f82d597f60fd23c7ad2f082640a9fe
|
||||
go1.17.9b7 ed86dfc4e441 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.9b7.linux-amd64.tar.gz 9469d1b4c10f59c921c4666c52baba5f6ca63b1cce0eca95e03b5713ef27577c
|
||||
go1.17.9b7 ed86dfc4e441 src https://go-boringcrypto.storage.googleapis.com/go1.17.9b7.src.tar.gz 5d6bfe543a9a2bf6d8749973c771e40127b8020a769ecc5fb41d0dbd7deae9a6
|
||||
go1.18.2b7 dcdb19874ff3 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.18.2b7.linux-amd64.tar.gz a53566eebe8e128695ddbd52c080502a0daca1c9f1b893cada9349259ed27e99
|
||||
go1.18.2b7 dcdb19874ff3 src https://go-boringcrypto.storage.googleapis.com/go1.18.2b7.src.tar.gz 3c3ce00cd39cdd2ae9afddd7581c6f8b14f8e96e2bb56b9cb4fec8ff02db63b0
|
||||
go1.17.10b7 6b07de790c08 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.10b7.linux-amd64.tar.gz 3c506a86b1e3e4fcffd6a875e5d47ca23f0a346c1bd6e6163e67dbb96eeec1d5
|
||||
go1.17.10b7 6b07de790c08 src https://go-boringcrypto.storage.googleapis.com/go1.17.10b7.src.tar.gz 9d5914842ea1b36edc2ceb6cfa7d3a79bea450c8b397e86bfae7c73944208f03
|
||||
go1.18.3b7 a69db81af596 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.18.3b7.linux-amd64.tar.gz 1c13ddfb539141298ee32d26b95345cacdcd245c29fb6bc63acb59f9ba41f519
|
||||
go1.18.3b7 a69db81af596 src https://go-boringcrypto.storage.googleapis.com/go1.18.3b7.src.tar.gz d8123121c491569c698ef713001a2193f13d9a8111a1ba7b2b0d4a2e9bf863db
|
||||
go1.17.11b7 4658e6e324a8 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.11b7.linux-amd64.tar.gz 104a5b10037e7a2646b0458519bf6efe85c6d203ae9f32ede7ed24d4e87f7b2d
|
||||
go1.17.11b7 4658e6e324a8 src https://go-boringcrypto.storage.googleapis.com/go1.17.11b7.src.tar.gz 85a6d4249e38decdaad0cffe784cbe249199e38a18db1c247097a5f91f5d9c10
|
||||
go1.18.4b7 913e3713bed3 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.18.4b7.linux-amd64.tar.gz 24be93f9718bfb4b7703fe959a69c61e103a0149dda693406cd681f7e00cf6fb
|
||||
go1.18.4b7 913e3713bed3 src https://go-boringcrypto.storage.googleapis.com/go1.18.4b7.src.tar.gz 572ce2d917c06ca87ccd3e51e02e0ad4a09eb0ad283cc762176d11d7cd4777af
|
||||
go1.17.12b7 7d5078e3bf2d linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.12b7.linux-amd64.tar.gz f1a075501f89d1b726a0a71611019679c77944e6ab253991aad79df73859d20a
|
||||
go1.17.12b7 7d5078e3bf2d src https://go-boringcrypto.storage.googleapis.com/go1.17.12b7.src.tar.gz aa7e6eccf8d8ee1fd270eb5acba58b6416ad97decae32ca7eee03193a70defa6
|
||||
go1.18.5b7 270c7b73de4a linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.18.5b7.linux-amd64.tar.gz 104479cff67e4c749304d95dd5b5e0d065a65780ec03b6378a28432c01504e88
|
||||
go1.18.5b7 270c7b73de4a src https://go-boringcrypto.storage.googleapis.com/go1.18.5b7.src.tar.gz 75f5021bd9b61f837fdd516cc4ec51556c519c7155a2e99ecfb4efeca8655aa7
|
||||
go1.17.13b7 349da2d42d31 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.17.13b7.linux-amd64.tar.gz 489151867b1454ea17d8a02bebb443121623c63585a15c2640e043c432c2d1ef
|
||||
go1.17.13b7 349da2d42d31 src https://go-boringcrypto.storage.googleapis.com/go1.17.13b7.src.tar.gz 8c86eede1718d45a8f934df2b158eb30b5d323255e5ff8885c81319f973f464e
|
||||
go1.18.6b7 5fe109f32326 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.18.6b7.linux-amd64.tar.gz a81c54b6dfd0750998be758a54ae46ecd5f1442c303c5146e844568c02acb47f
|
||||
go1.18.6b7 5fe109f32326 src https://go-boringcrypto.storage.googleapis.com/go1.18.6b7.src.tar.gz 0afc7b1edb8b7570ba05bc30b112804280b1cc5750e1a3dc8500be5c8b8ba06f
|
||||
go1.18.7b7 e3d1f0e7da63 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.18.7b7.linux-amd64.tar.gz 96694715f7d8122670a5e919b122470817041077e0f98ffd2c2643df5824ee82
|
||||
go1.18.7b7 e3d1f0e7da63 src https://go-boringcrypto.storage.googleapis.com/go1.18.7b7.src.tar.gz c62ba13f792f64f31381d34a7d6b14aec0b04363eb67085b999d1d6e51a94136
|
||||
go1.18.8b7 94108e21ab6f linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.18.8b7.linux-amd64.tar.gz 9df1f697273b29a5f8b23e5ed2bfd187237d886c2ebac360f457537c7b17dcd8
|
||||
go1.18.8b7 94108e21ab6f src https://go-boringcrypto.storage.googleapis.com/go1.18.8b7.src.tar.gz c3028846650b42cf77c1c0d540791eaa1283c8e60e2a87e28ae43658ffdc262a
|
||||
go1.18.9b7 fc1ed37e824b linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.18.9b7.linux-amd64.tar.gz 65f15218ed55697de24d4f58f43ed3c1ff35eb59462aab8002554cc479bf573c
|
||||
go1.18.9b7 fc1ed37e824b src https://go-boringcrypto.storage.googleapis.com/go1.18.9b7.src.tar.gz 45b1ed1d3f63d1fa86c6f26329f11912c1dbfb1fa4fd39cf0eabc84e29f86cd7
|
||||
go1.18.10b7 7058c2cb4132 linux-amd64 https://go-boringcrypto.storage.googleapis.com/go1.18.10b7.linux-amd64.tar.gz 17897c0f3716c8bc8ad3db9a41b7b35820b9d43cff3982193808f9af13e7dae5
|
||||
go1.18.10b7 7058c2cb4132 src https://go-boringcrypto.storage.googleapis.com/go1.18.10b7.src.tar.gz 4ced930d738cb30f4c4b28b7281d1e2e397eda2353b4c8f7c6de82ef589acc0b
|
||||
|
||||
@@ -1 +1 @@
|
||||
8
|
||||
7
|
||||
|
||||
@@ -39,11 +39,9 @@ fi
|
||||
dversion=$(echo "$version" | sed 's/^go//')
|
||||
sed "s!UUU!$url!; s/SSS/$sha256/; s/VVV/$dversion/" dockerfile.in >$dir/Dockerfile
|
||||
|
||||
dpkg=us-docker.pkg.dev/google.com/api-project-999119582588/go-boringcrypto/golang:$dversion
|
||||
|
||||
docker build --pull -t $dpkg $dir
|
||||
docker run $dpkg go version
|
||||
docker run $dpkg go tool nm /usr/local/go/bin/go >$dir/nm
|
||||
docker build --pull -t goboring/golang:$dversion $dir
|
||||
docker run goboring/golang:$dversion go version
|
||||
docker run goboring/golang:$dversion go tool nm /usr/local/go/bin/go >$dir/nm
|
||||
if ! grep crypto/internal/boring/sig.BoringCrypto $dir/nm >/dev/null; then
|
||||
echo 'built docker image but did NOT find sig.BoringCrypto in go command!' >&2
|
||||
exit 2
|
||||
@@ -52,7 +50,7 @@ if egrep 'crypto/sha256\.\(\*digest\)' $dir/nm >/dev/null; then
|
||||
echo 'built docker image but DID find sha256.(*digest) in go command unexpectedly!' >&2
|
||||
exit 2
|
||||
fi
|
||||
docker push $dpkg
|
||||
docker push goboring/golang:$dversion
|
||||
|
||||
echo
|
||||
echo published as $dpkg
|
||||
echo published as goboring/golang:$dversion
|
||||
|
||||
@@ -70,7 +70,7 @@ sha() {
|
||||
fi
|
||||
}
|
||||
shortgo=$(echo "$base" | perl -pe 's/(go\d+\.\d+)(\.\d+|rc\d+)/$1/')
|
||||
$dir/release -target linux-amd64 -rev "$commit" -version "$version" -skip_long_tests
|
||||
$dir/release -target linux-amd64 -rev "$commit" -version "$version"
|
||||
$dir/release -target src -rev "$commit" -version "$version"
|
||||
output="$version.linux-amd64.tar.gz"
|
||||
ls -l "$output"
|
||||
|
||||
@@ -30,5 +30,5 @@ if ! git log --format=%B -n 1 | grep "\[$TARGET\] "; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
git codereview mail -trybot HEAD
|
||||
git codereview mail -r katie@golang.org,roland@golang.org,filippo@golang.org -trybot -trust HEAD
|
||||
cd - && git worktree remove "$WORKTREE"
|
||||
|
||||
@@ -18,7 +18,7 @@ git fetch
|
||||
git worktree add --track -b "$BRANCH" "$WORKTREE" origin/dev.boringcrypto
|
||||
|
||||
cd "$WORKTREE/src"
|
||||
GOEXPERIMENT=boringcrypto ./make.bash
|
||||
./make.bash
|
||||
|
||||
cd ../misc/boring
|
||||
for branch in "$@"; do
|
||||
@@ -28,7 +28,7 @@ done
|
||||
|
||||
git add RELEASES
|
||||
git commit -m "misc/boring: add new releases to RELEASES file"
|
||||
git codereview mail
|
||||
git codereview mail -r katie@golang.org,roland@golang.org,filippo@golang.org -trust
|
||||
|
||||
rm *.tar.gz
|
||||
cd - && git worktree remove "$WORKTREE"
|
||||
|
||||
@@ -201,10 +201,6 @@ func cCompilerCmd(t *testing.T) []string {
|
||||
if !lastSpace {
|
||||
cc = append(cc, s[start:])
|
||||
}
|
||||
|
||||
// Force reallocation (and avoid aliasing bugs) for tests that append to cc.
|
||||
cc = cc[:len(cc):len(cc)]
|
||||
|
||||
return cc
|
||||
}
|
||||
|
||||
|
||||
@@ -36,13 +36,14 @@ func check(t *testing.T, file string) {
|
||||
continue
|
||||
}
|
||||
|
||||
_, frag, ok := bytes.Cut(line, []byte("ERROR HERE: "))
|
||||
if !ok {
|
||||
frags := bytes.SplitAfterN(line, []byte("ERROR HERE: "), 2)
|
||||
if len(frags) == 1 {
|
||||
continue
|
||||
}
|
||||
re, err := regexp.Compile(fmt.Sprintf(":%d:.*%s", i+1, frag))
|
||||
frag := fmt.Sprintf(":%d:.*%s", i+1, frags[1])
|
||||
re, err := regexp.Compile(frag)
|
||||
if err != nil {
|
||||
t.Errorf("Invalid regexp after `ERROR HERE: `: %#q", frag)
|
||||
t.Errorf("Invalid regexp after `ERROR HERE: `: %#q", frags[1])
|
||||
continue
|
||||
}
|
||||
errors = append(errors, re)
|
||||
|
||||
12
misc/cgo/errors/testdata/err2.go
vendored
12
misc/cgo/errors/testdata/err2.go
vendored
@@ -91,18 +91,10 @@ func main() {
|
||||
|
||||
// issue 26745
|
||||
_ = func(i int) int {
|
||||
// typecheck reports at column 14 ('+'), but types2 reports at
|
||||
// column 10 ('C').
|
||||
// TODO(mdempsky): Investigate why, and see if types2 can be
|
||||
// updated to match typecheck behavior.
|
||||
return C.i + 1 // ERROR HERE: \b(10|14)\b
|
||||
return C.i + 1 // ERROR HERE: 14
|
||||
}
|
||||
_ = func(i int) {
|
||||
// typecheck reports at column 7 ('('), but types2 reports at
|
||||
// column 8 ('i'). The types2 position is more correct, but
|
||||
// updating typecheck here is fundamentally challenging because of
|
||||
// IR limitations.
|
||||
C.fi(i) // ERROR HERE: \b(7|8)\b
|
||||
C.fi(i) // ERROR HERE: 7
|
||||
}
|
||||
|
||||
C.fi = C.fi // ERROR HERE
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build ignore
|
||||
// +build ignore
|
||||
|
||||
// Compute Fibonacci numbers with two goroutines
|
||||
|
||||
@@ -333,9 +333,10 @@ func (z *Int) Abs(x *Int) *Int {
|
||||
|
||||
// CmpInt compares x and y. The result is
|
||||
//
|
||||
// -1 if x < y
|
||||
// 0 if x == y
|
||||
// +1 if x > y
|
||||
// -1 if x < y
|
||||
// 0 if x == y
|
||||
// +1 if x > y
|
||||
//
|
||||
func CmpInt(x, y *Int) int {
|
||||
x.doinit()
|
||||
y.doinit()
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build ignore
|
||||
// +build ignore
|
||||
|
||||
package main
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
#include "_cgo_export.h"
|
||||
|
||||
void
|
||||
@@ -30,10 +31,32 @@ IntoC(void)
|
||||
BackIntoGo();
|
||||
}
|
||||
|
||||
void
|
||||
Issue1560InC(void)
|
||||
#ifdef WIN32
|
||||
#include <windows.h>
|
||||
long long
|
||||
mysleep(int seconds) {
|
||||
long long st = GetTickCount();
|
||||
Sleep(1000 * seconds);
|
||||
return st;
|
||||
}
|
||||
#else
|
||||
#include <sys/time.h>
|
||||
long long
|
||||
mysleep(int seconds) {
|
||||
long long st;
|
||||
struct timeval tv;
|
||||
gettimeofday(&tv, NULL);
|
||||
st = tv.tv_sec * 1000 + tv.tv_usec / 1000;
|
||||
sleep(seconds);
|
||||
return st;
|
||||
}
|
||||
#endif
|
||||
|
||||
long long
|
||||
twoSleep(int n)
|
||||
{
|
||||
Issue1560FromC();
|
||||
BackgroundSleep(n);
|
||||
return mysleep(n);
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
@@ -11,7 +11,6 @@ import "testing"
|
||||
// These wrappers are here for gotest to find.
|
||||
|
||||
func Test1328(t *testing.T) { test1328(t) }
|
||||
func Test1560(t *testing.T) { test1560(t) }
|
||||
func Test1635(t *testing.T) { test1635(t) }
|
||||
func Test3250(t *testing.T) { test3250(t) }
|
||||
func Test3729(t *testing.T) { test3729(t) }
|
||||
@@ -60,9 +59,7 @@ func Test28896(t *testing.T) { test28896(t) }
|
||||
func Test30065(t *testing.T) { test30065(t) }
|
||||
func Test32579(t *testing.T) { test32579(t) }
|
||||
func Test31891(t *testing.T) { test31891(t) }
|
||||
func Test42018(t *testing.T) { test42018(t) }
|
||||
func Test45451(t *testing.T) { test45451(t) }
|
||||
func Test49633(t *testing.T) { test49633(t) }
|
||||
func TestAlign(t *testing.T) { testAlign(t) }
|
||||
func TestAtol(t *testing.T) { testAtol(t) }
|
||||
func TestBlocking(t *testing.T) { testBlocking(t) }
|
||||
@@ -90,6 +87,7 @@ func TestLibgcc(t *testing.T) { testLibgcc(t) }
|
||||
func TestMultipleAssign(t *testing.T) { testMultipleAssign(t) }
|
||||
func TestNaming(t *testing.T) { testNaming(t) }
|
||||
func TestPanicFromC(t *testing.T) { testPanicFromC(t) }
|
||||
func TestParallelSleep(t *testing.T) { testParallelSleep(t) }
|
||||
func TestPrintf(t *testing.T) { testPrintf(t) }
|
||||
func TestReturnAfterGrow(t *testing.T) { testReturnAfterGrow(t) }
|
||||
func TestReturnAfterGrowFromGo(t *testing.T) { testReturnAfterGrowFromGo(t) }
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build linux && freebsd && openbsd
|
||||
// +build linux,freebsd,openbsd
|
||||
|
||||
package cgotest
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !windows
|
||||
// +build !windows
|
||||
|
||||
package cgotest
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build linux && cgo
|
||||
// +build linux,cgo
|
||||
|
||||
package cgotest
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !windows
|
||||
// +build !windows
|
||||
|
||||
// Issue 18146: pthread_create failure during syscall.Exec.
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build darwin && cgo && !internal
|
||||
// +build darwin,cgo,!internal
|
||||
|
||||
package cgotest
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !darwin || !cgo || internal
|
||||
// +build !darwin !cgo internal
|
||||
|
||||
package cgotest
|
||||
|
||||
@@ -2,9 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !windows && !static && (!darwin || (!internal_pie && !arm64))
|
||||
// +build !windows
|
||||
// +build !static
|
||||
// +build !windows,!static
|
||||
// +build !darwin !internal_pie,!arm64
|
||||
|
||||
// Excluded in darwin internal linking PIE mode, as dynamic export is not
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build windows || static || (darwin && internal_pie) || (darwin && arm64)
|
||||
// +build windows static darwin,internal_pie darwin,arm64
|
||||
|
||||
package cgotest
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
// Copyright 2021 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !windows
|
||||
// +build !windows
|
||||
|
||||
package cgotest
|
||||
|
||||
import "testing"
|
||||
|
||||
func test42018(t *testing.T) {
|
||||
t.Skip("skipping Windows-only test")
|
||||
}
|
||||
@@ -1,46 +0,0 @@
|
||||
// Copyright 2021 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package cgotest
|
||||
|
||||
/*
|
||||
typedef void *HANDLE;
|
||||
|
||||
struct HWND__{int unused;}; typedef struct HWND__ *HWND;
|
||||
*/
|
||||
import "C"
|
||||
|
||||
import (
|
||||
"testing"
|
||||
"unsafe"
|
||||
)
|
||||
|
||||
func test42018(t *testing.T) {
|
||||
// Test that Windows handles are marked go:notinheap, by growing the
|
||||
// stack and checking for pointer adjustments. Trick from
|
||||
// test/fixedbugs/issue40954.go.
|
||||
var i int
|
||||
handle := C.HANDLE(unsafe.Pointer(uintptr(unsafe.Pointer(&i))))
|
||||
recurseHANDLE(100, handle, uintptr(unsafe.Pointer(&i)))
|
||||
hwnd := C.HWND(unsafe.Pointer(uintptr(unsafe.Pointer(&i))))
|
||||
recurseHWND(400, hwnd, uintptr(unsafe.Pointer(&i)))
|
||||
}
|
||||
|
||||
func recurseHANDLE(n int, p C.HANDLE, v uintptr) {
|
||||
if n > 0 {
|
||||
recurseHANDLE(n-1, p, v)
|
||||
}
|
||||
if uintptr(unsafe.Pointer(p)) != v {
|
||||
panic("adjusted notinheap pointer")
|
||||
}
|
||||
}
|
||||
|
||||
func recurseHWND(n int, p C.HWND, v uintptr) {
|
||||
if n > 0 {
|
||||
recurseHWND(n-1, p, v)
|
||||
}
|
||||
if uintptr(unsafe.Pointer(p)) != v {
|
||||
panic("adjusted notinheap pointer")
|
||||
}
|
||||
}
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !android
|
||||
// +build !android
|
||||
|
||||
// Test that pthread_cancel works as expected
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !windows
|
||||
// +build !windows
|
||||
|
||||
package cgotest
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !android
|
||||
// +build !android
|
||||
|
||||
package cgotest
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !windows && !android
|
||||
// +build !windows,!android
|
||||
|
||||
// Test that the Go runtime still works if C code changes the signal stack.
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !windows
|
||||
// +build !windows
|
||||
|
||||
package cgotest
|
||||
|
||||
@@ -367,11 +367,6 @@ void init() {
|
||||
// Cgo incorrectly computed the alignment of structs
|
||||
// with no Go accessible fields as 0, and then panicked on
|
||||
// modulo-by-zero computations.
|
||||
|
||||
// issue 50987
|
||||
// disable arm64 GCC warnings
|
||||
#cgo CFLAGS: -Wno-psabi -Wno-unknown-warning-option
|
||||
|
||||
typedef struct {
|
||||
} foo;
|
||||
|
||||
@@ -920,11 +915,6 @@ void issue40494(enum Enum40494 e, union Union40494* up) {}
|
||||
|
||||
// Issue 45451, bad handling of go:notinheap types.
|
||||
typedef struct issue45451Undefined issue45451;
|
||||
|
||||
// Issue 49633, example of cgo.Handle with void*.
|
||||
extern void GoFunc49633(void*);
|
||||
void cfunc49633(void *context) { GoFunc49633(context); }
|
||||
|
||||
*/
|
||||
import "C"
|
||||
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !windows
|
||||
// +build !windows
|
||||
|
||||
package cgotest
|
||||
|
||||
9
misc/cgo/test/testdata/issue43639.go
vendored
9
misc/cgo/test/testdata/issue43639.go
vendored
@@ -1,9 +0,0 @@
|
||||
// Copyright 2021 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package cgotest
|
||||
|
||||
// Issue 43639: No runtime test needed, make sure package cgotest/issue43639 compiles well.
|
||||
|
||||
import _ "cgotest/issue43639"
|
||||
8
misc/cgo/test/testdata/issue43639/a.go
vendored
8
misc/cgo/test/testdata/issue43639/a.go
vendored
@@ -1,8 +0,0 @@
|
||||
// Copyright 2021 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package issue43639
|
||||
|
||||
// #cgo CFLAGS: -W -Wall -Werror
|
||||
import "C"
|
||||
9
misc/cgo/test/testdata/issue9400_linux.go
vendored
9
misc/cgo/test/testdata/issue9400_linux.go
vendored
@@ -15,7 +15,6 @@ import "C"
|
||||
|
||||
import (
|
||||
"runtime"
|
||||
"runtime/debug"
|
||||
"sync/atomic"
|
||||
"testing"
|
||||
|
||||
@@ -47,14 +46,6 @@ func test9400(t *testing.T) {
|
||||
big[i] = pattern
|
||||
}
|
||||
|
||||
// Disable GC for the duration of the test.
|
||||
// This avoids a potential GC deadlock when spinning in uninterruptable ASM below #49695.
|
||||
defer debug.SetGCPercent(debug.SetGCPercent(-1))
|
||||
// SetGCPercent waits until the mark phase is over, but the runtime
|
||||
// also preempts at the start of the sweep phase, so make sure that's
|
||||
// done too. See #49695.
|
||||
runtime.GC()
|
||||
|
||||
// Temporarily rewind the stack and trigger SIGSETXID
|
||||
issue9400.RewindAndSetgid()
|
||||
|
||||
|
||||
@@ -18,6 +18,7 @@ import (
|
||||
"sync"
|
||||
"sync/atomic"
|
||||
"testing"
|
||||
"time"
|
||||
"unsafe"
|
||||
)
|
||||
|
||||
@@ -29,7 +30,8 @@ extern void doAdd(int, int);
|
||||
void IntoC(void);
|
||||
|
||||
// issue 1560
|
||||
extern void Issue1560InC(void);
|
||||
// mysleep returns the absolute start time in ms.
|
||||
long long mysleep(int seconds);
|
||||
|
||||
// twoSleep returns the absolute start time of the first sleep
|
||||
// in ms.
|
||||
@@ -111,7 +113,6 @@ typedef struct {
|
||||
int i;
|
||||
} Issue38408, *PIssue38408;
|
||||
|
||||
extern void cfunc49633(void*); // definition is in test.go
|
||||
*/
|
||||
import "C"
|
||||
|
||||
@@ -181,40 +182,35 @@ func test1328(t *testing.T) {
|
||||
}
|
||||
|
||||
// issue 1560
|
||||
// Test that C functions and Go functions run in parallel.
|
||||
|
||||
var (
|
||||
issue1560 int32
|
||||
var sleepDone = make(chan int64)
|
||||
|
||||
issue1560Ch = make(chan bool, 2)
|
||||
)
|
||||
|
||||
//export Issue1560FromC
|
||||
func Issue1560FromC() {
|
||||
for atomic.LoadInt32(&issue1560) != 1 {
|
||||
runtime.Gosched()
|
||||
// parallelSleep returns the absolute difference between the start time
|
||||
// of the two sleeps.
|
||||
func parallelSleep(n int) int64 {
|
||||
t := int64(C.twoSleep(C.int(n))) - <-sleepDone
|
||||
if t < 0 {
|
||||
return -t
|
||||
}
|
||||
atomic.AddInt32(&issue1560, 1)
|
||||
for atomic.LoadInt32(&issue1560) != 3 {
|
||||
runtime.Gosched()
|
||||
}
|
||||
issue1560Ch <- true
|
||||
return t
|
||||
}
|
||||
|
||||
func Issue1560FromGo() {
|
||||
atomic.AddInt32(&issue1560, 1)
|
||||
for atomic.LoadInt32(&issue1560) != 2 {
|
||||
runtime.Gosched()
|
||||
}
|
||||
atomic.AddInt32(&issue1560, 1)
|
||||
issue1560Ch <- true
|
||||
//export BackgroundSleep
|
||||
func BackgroundSleep(n int32) {
|
||||
go func() {
|
||||
sleepDone <- int64(C.mysleep(C.int(n)))
|
||||
}()
|
||||
}
|
||||
|
||||
func test1560(t *testing.T) {
|
||||
go Issue1560FromGo()
|
||||
go C.Issue1560InC()
|
||||
<-issue1560Ch
|
||||
<-issue1560Ch
|
||||
func testParallelSleep(t *testing.T) {
|
||||
sleepSec := 1
|
||||
dt := time.Duration(parallelSleep(sleepSec)) * time.Millisecond
|
||||
t.Logf("difference in start time for two sleep(%d) is %v", sleepSec, dt)
|
||||
// bug used to run sleeps in serial, producing a 2*sleepSec-second delay.
|
||||
// we detect if the start times of those sleeps are > 0.5*sleepSec-second.
|
||||
if dt >= time.Duration(sleepSec)*time.Second/2 {
|
||||
t.Fatalf("parallel %d-second sleeps slept for %f seconds", sleepSec, dt.Seconds())
|
||||
}
|
||||
}
|
||||
|
||||
// issue 2462
|
||||
@@ -558,26 +554,3 @@ func GoFunc37033(handle C.uintptr_t) {
|
||||
// A typedef pointer can be used as the element type.
|
||||
// No runtime test; just make sure it compiles.
|
||||
var _ C.PIssue38408 = &C.Issue38408{i: 1}
|
||||
|
||||
// issue 49633, example use of cgo.Handle with void*
|
||||
|
||||
type data49633 struct {
|
||||
msg string
|
||||
}
|
||||
|
||||
//export GoFunc49633
|
||||
func GoFunc49633(context unsafe.Pointer) {
|
||||
h := *(*cgo.Handle)(context)
|
||||
v := h.Value().(*data49633)
|
||||
v.msg = "hello"
|
||||
}
|
||||
|
||||
func test49633(t *testing.T) {
|
||||
v := &data49633{}
|
||||
h := cgo.NewHandle(v)
|
||||
defer h.Delete()
|
||||
C.cfunc49633(unsafe.Pointer(&h))
|
||||
if v.msg != "hello" {
|
||||
t.Errorf("msg = %q, want 'hello'", v.msg)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
// Copyright 2021 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package cgotest
|
||||
|
||||
// #include <stddef.h>
|
||||
import "C"
|
||||
|
||||
func generic[T, U any](t T, u U) {}
|
||||
|
||||
func useGeneric() {
|
||||
const zero C.size_t = 0
|
||||
|
||||
generic(zero, zero)
|
||||
generic[C.size_t, C.size_t](0, 0)
|
||||
}
|
||||
@@ -140,9 +140,6 @@ func testMain(m *testing.M) int {
|
||||
libgodir = filepath.Join(GOPATH, "pkg", libbase, "testcarchive")
|
||||
cc = append(cc, "-I", libgodir)
|
||||
|
||||
// Force reallocation (and avoid aliasing bugs) for parallel tests that append to cc.
|
||||
cc = cc[:len(cc):len(cc)]
|
||||
|
||||
if GOOS == "windows" {
|
||||
exeSuffix = ".exe"
|
||||
}
|
||||
@@ -482,7 +479,7 @@ func TestEarlySignalHandler(t *testing.T) {
|
||||
defer func() {
|
||||
os.Remove("libgo2.a")
|
||||
os.Remove("libgo2.h")
|
||||
os.Remove("testp" + exeSuffix)
|
||||
os.Remove("testp")
|
||||
os.RemoveAll(filepath.Join(GOPATH, "pkg"))
|
||||
}()
|
||||
}
|
||||
@@ -523,7 +520,7 @@ func TestSignalForwarding(t *testing.T) {
|
||||
defer func() {
|
||||
os.Remove("libgo2.a")
|
||||
os.Remove("libgo2.h")
|
||||
os.Remove("testp" + exeSuffix)
|
||||
os.Remove("testp")
|
||||
os.RemoveAll(filepath.Join(GOPATH, "pkg"))
|
||||
}()
|
||||
}
|
||||
@@ -548,7 +545,7 @@ func TestSignalForwarding(t *testing.T) {
|
||||
cmd = exec.Command(bin[0], append(bin[1:], "1")...)
|
||||
|
||||
out, err := cmd.CombinedOutput()
|
||||
t.Logf("%v\n%s", cmd.Args, out)
|
||||
t.Logf("%s", out)
|
||||
expectSignal(t, err, syscall.SIGSEGV)
|
||||
|
||||
// SIGPIPE is never forwarded on darwin. See golang.org/issue/33384.
|
||||
@@ -557,9 +554,7 @@ func TestSignalForwarding(t *testing.T) {
|
||||
cmd = exec.Command(bin[0], append(bin[1:], "3")...)
|
||||
|
||||
out, err = cmd.CombinedOutput()
|
||||
if len(out) > 0 {
|
||||
t.Logf("%s", out)
|
||||
}
|
||||
t.Logf("%s", out)
|
||||
expectSignal(t, err, syscall.SIGPIPE)
|
||||
}
|
||||
}
|
||||
@@ -576,7 +571,7 @@ func TestSignalForwardingExternal(t *testing.T) {
|
||||
defer func() {
|
||||
os.Remove("libgo2.a")
|
||||
os.Remove("libgo2.h")
|
||||
os.Remove("testp" + exeSuffix)
|
||||
os.Remove("testp")
|
||||
os.RemoveAll(filepath.Join(GOPATH, "pkg"))
|
||||
}()
|
||||
}
|
||||
@@ -694,7 +689,7 @@ func TestOsSignal(t *testing.T) {
|
||||
defer func() {
|
||||
os.Remove("libgo3.a")
|
||||
os.Remove("libgo3.h")
|
||||
os.Remove("testp" + exeSuffix)
|
||||
os.Remove("testp")
|
||||
os.RemoveAll(filepath.Join(GOPATH, "pkg"))
|
||||
}()
|
||||
}
|
||||
@@ -732,7 +727,7 @@ func TestSigaltstack(t *testing.T) {
|
||||
defer func() {
|
||||
os.Remove("libgo4.a")
|
||||
os.Remove("libgo4.h")
|
||||
os.Remove("testp" + exeSuffix)
|
||||
os.Remove("testp")
|
||||
os.RemoveAll(filepath.Join(GOPATH, "pkg"))
|
||||
}()
|
||||
}
|
||||
@@ -926,9 +921,8 @@ func TestSIGPROF(t *testing.T) {
|
||||
}
|
||||
|
||||
cmd := exec.Command("go", "build", "-buildmode=c-archive", "-o", "libgo6.a", "./libgo6")
|
||||
out, err := cmd.CombinedOutput()
|
||||
t.Logf("%v\n%s", cmd.Args, out)
|
||||
if err != nil {
|
||||
if out, err := cmd.CombinedOutput(); err != nil {
|
||||
t.Logf("%s", out)
|
||||
t.Fatal(err)
|
||||
}
|
||||
checkLineComments(t, "libgo6.h")
|
||||
@@ -938,17 +932,15 @@ func TestSIGPROF(t *testing.T) {
|
||||
if runtime.Compiler == "gccgo" {
|
||||
ccArgs = append(ccArgs, "-lgo")
|
||||
}
|
||||
out, err = exec.Command(ccArgs[0], ccArgs[1:]...).CombinedOutput()
|
||||
t.Logf("%v\n%s", ccArgs, out)
|
||||
if err != nil {
|
||||
if out, err := exec.Command(ccArgs[0], ccArgs[1:]...).CombinedOutput(); err != nil {
|
||||
t.Logf("%s", out)
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
argv := cmdToRun("./testp6")
|
||||
cmd = exec.Command(argv[0], argv[1:]...)
|
||||
out, err = cmd.CombinedOutput()
|
||||
t.Logf("%v\n%s", argv, out)
|
||||
if err != nil {
|
||||
if out, err := cmd.CombinedOutput(); err != nil {
|
||||
t.Logf("%s", out)
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
@@ -971,8 +963,9 @@ func TestCompileWithoutShared(t *testing.T) {
|
||||
}
|
||||
|
||||
cmd := exec.Command("go", "build", "-buildmode=c-archive", "-gcflags=-shared=false", "-o", "libgo2.a", "./libgo2")
|
||||
t.Log(cmd.Args)
|
||||
out, err := cmd.CombinedOutput()
|
||||
t.Logf("%v\n%s", cmd.Args, out)
|
||||
t.Logf("%s", out)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@@ -987,22 +980,23 @@ func TestCompileWithoutShared(t *testing.T) {
|
||||
if runtime.Compiler == "gccgo" {
|
||||
ccArgs = append(ccArgs, "-lgo")
|
||||
}
|
||||
t.Log(ccArgs)
|
||||
out, err = exec.Command(ccArgs[0], ccArgs[1:]...).CombinedOutput()
|
||||
t.Logf("%v\n%s", ccArgs, out)
|
||||
|
||||
// If -no-pie unrecognized, try -nopie if this is possibly clang
|
||||
if err != nil && bytes.Contains(out, []byte("unknown")) && !strings.Contains(cc[0], "gcc") {
|
||||
ccArgs = append(cc, "-o", exe, "-nopie", "main5.c", "libgo2.a")
|
||||
t.Log(ccArgs)
|
||||
out, err = exec.Command(ccArgs[0], ccArgs[1:]...).CombinedOutput()
|
||||
t.Logf("%v\n%s", ccArgs, out)
|
||||
}
|
||||
|
||||
// Don't use either -no-pie or -nopie
|
||||
if err != nil && bytes.Contains(out, []byte("unrecognized")) {
|
||||
ccArgs = append(cc, "-o", exe, "main5.c", "libgo2.a")
|
||||
ccArgs := append(cc, "-o", exe, "main5.c", "libgo2.a")
|
||||
t.Log(ccArgs)
|
||||
out, err = exec.Command(ccArgs[0], ccArgs[1:]...).CombinedOutput()
|
||||
t.Logf("%v\n%s", ccArgs, out)
|
||||
}
|
||||
t.Logf("%s", out)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@@ -1011,15 +1005,17 @@ func TestCompileWithoutShared(t *testing.T) {
|
||||
}
|
||||
|
||||
binArgs := append(cmdToRun(exe), "1")
|
||||
t.Log(binArgs)
|
||||
out, err = exec.Command(binArgs[0], binArgs[1:]...).CombinedOutput()
|
||||
t.Logf("%v\n%s", binArgs, out)
|
||||
t.Logf("%s", out)
|
||||
expectSignal(t, err, syscall.SIGSEGV)
|
||||
|
||||
// SIGPIPE is never forwarded on darwin. See golang.org/issue/33384.
|
||||
if runtime.GOOS != "darwin" && runtime.GOOS != "ios" {
|
||||
binArgs := append(cmdToRun(exe), "3")
|
||||
t.Log(binArgs)
|
||||
out, err = exec.Command(binArgs[0], binArgs[1:]...).CombinedOutput()
|
||||
t.Logf("%v\n%s", binArgs, out)
|
||||
t.Logf("%s", out)
|
||||
expectSignal(t, err, syscall.SIGPIPE)
|
||||
}
|
||||
}
|
||||
@@ -1074,9 +1070,8 @@ func TestManyCalls(t *testing.T) {
|
||||
}
|
||||
|
||||
cmd := exec.Command("go", "build", "-buildmode=c-archive", "-o", "libgo7.a", "./libgo7")
|
||||
out, err := cmd.CombinedOutput()
|
||||
t.Logf("%v\n%s", cmd.Args, out)
|
||||
if err != nil {
|
||||
if out, err := cmd.CombinedOutput(); err != nil {
|
||||
t.Logf("%s", out)
|
||||
t.Fatal(err)
|
||||
}
|
||||
checkLineComments(t, "libgo7.h")
|
||||
@@ -1086,17 +1081,16 @@ func TestManyCalls(t *testing.T) {
|
||||
if runtime.Compiler == "gccgo" {
|
||||
ccArgs = append(ccArgs, "-lgo")
|
||||
}
|
||||
out, err = exec.Command(ccArgs[0], ccArgs[1:]...).CombinedOutput()
|
||||
t.Logf("%v\n%s", ccArgs, out)
|
||||
if err != nil {
|
||||
if out, err := exec.Command(ccArgs[0], ccArgs[1:]...).CombinedOutput(); err != nil {
|
||||
t.Logf("%s", out)
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
argv := cmdToRun("./testp7")
|
||||
cmd = exec.Command(argv[0], argv[1:]...)
|
||||
sb := new(strings.Builder)
|
||||
cmd.Stdout = sb
|
||||
cmd.Stderr = sb
|
||||
var sb strings.Builder
|
||||
cmd.Stdout = &sb
|
||||
cmd.Stderr = &sb
|
||||
if err := cmd.Start(); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@@ -1109,65 +1103,8 @@ func TestManyCalls(t *testing.T) {
|
||||
)
|
||||
defer timer.Stop()
|
||||
|
||||
err = cmd.Wait()
|
||||
t.Logf("%v\n%s", cmd.Args, sb)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
}
|
||||
|
||||
// Issue 49288.
|
||||
func TestPreemption(t *testing.T) {
|
||||
if runtime.Compiler == "gccgo" {
|
||||
t.Skip("skipping asynchronous preemption test with gccgo")
|
||||
}
|
||||
|
||||
t.Parallel()
|
||||
|
||||
if !testWork {
|
||||
defer func() {
|
||||
os.Remove("testp8" + exeSuffix)
|
||||
os.Remove("libgo8.a")
|
||||
os.Remove("libgo8.h")
|
||||
}()
|
||||
}
|
||||
|
||||
cmd := exec.Command("go", "build", "-buildmode=c-archive", "-o", "libgo8.a", "./libgo8")
|
||||
out, err := cmd.CombinedOutput()
|
||||
t.Logf("%v\n%s", cmd.Args, out)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
checkLineComments(t, "libgo8.h")
|
||||
checkArchive(t, "libgo8.a")
|
||||
|
||||
ccArgs := append(cc, "-o", "testp8"+exeSuffix, "main8.c", "libgo8.a")
|
||||
out, err = exec.Command(ccArgs[0], ccArgs[1:]...).CombinedOutput()
|
||||
t.Logf("%v\n%s", ccArgs, out)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
argv := cmdToRun("./testp8")
|
||||
cmd = exec.Command(argv[0], argv[1:]...)
|
||||
sb := new(strings.Builder)
|
||||
cmd.Stdout = sb
|
||||
cmd.Stderr = sb
|
||||
if err := cmd.Start(); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
timer := time.AfterFunc(time.Minute,
|
||||
func() {
|
||||
t.Error("test program timed out")
|
||||
cmd.Process.Kill()
|
||||
},
|
||||
)
|
||||
defer timer.Stop()
|
||||
|
||||
err = cmd.Wait()
|
||||
t.Logf("%v\n%s", cmd.Args, sb)
|
||||
if err != nil {
|
||||
if err := cmd.Wait(); err != nil {
|
||||
t.Log(sb.String())
|
||||
t.Error(err)
|
||||
}
|
||||
}
|
||||
|
||||
36
misc/cgo/testcarchive/testdata/libgo8/a.go
vendored
36
misc/cgo/testcarchive/testdata/libgo8/a.go
vendored
@@ -1,36 +0,0 @@
|
||||
// Copyright 2021 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package main
|
||||
|
||||
import "C"
|
||||
|
||||
import (
|
||||
"os"
|
||||
"runtime"
|
||||
"sync/atomic"
|
||||
)
|
||||
|
||||
var started int32
|
||||
|
||||
// Start a goroutine that loops forever.
|
||||
func init() {
|
||||
runtime.GOMAXPROCS(1)
|
||||
go func() {
|
||||
for {
|
||||
atomic.StoreInt32(&started, 1)
|
||||
}
|
||||
}()
|
||||
}
|
||||
|
||||
//export GoFunction8
|
||||
func GoFunction8() {
|
||||
for atomic.LoadInt32(&started) == 0 {
|
||||
runtime.Gosched()
|
||||
}
|
||||
os.Exit(0)
|
||||
}
|
||||
|
||||
func main() {
|
||||
}
|
||||
16
misc/cgo/testcarchive/testdata/main8.c
vendored
16
misc/cgo/testcarchive/testdata/main8.c
vendored
@@ -1,16 +0,0 @@
|
||||
// Copyright 2021 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
// Test preemption.
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "libgo8.h"
|
||||
|
||||
int main() {
|
||||
GoFunction8();
|
||||
|
||||
// That should have exited the program.
|
||||
abort();
|
||||
}
|
||||
@@ -5,7 +5,6 @@
|
||||
package cshared_test
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"bytes"
|
||||
"debug/elf"
|
||||
"debug/pe"
|
||||
@@ -118,9 +117,6 @@ func testMain(m *testing.M) int {
|
||||
}
|
||||
cc = append(cc, "-I", filepath.Join("pkg", libgodir))
|
||||
|
||||
// Force reallocation (and avoid aliasing bugs) for parallel tests that append to cc.
|
||||
cc = cc[:len(cc):len(cc)]
|
||||
|
||||
if GOOS == "windows" {
|
||||
exeSuffix = ".exe"
|
||||
}
|
||||
@@ -204,7 +200,7 @@ func adbRun(t *testing.T, env []string, adbargs ...string) string {
|
||||
args := append(adbCmd(), "exec-out")
|
||||
// Propagate LD_LIBRARY_PATH to the adb shell invocation.
|
||||
for _, e := range env {
|
||||
if strings.Contains(e, "LD_LIBRARY_PATH=") {
|
||||
if strings.Index(e, "LD_LIBRARY_PATH=") != -1 {
|
||||
adbargs = append([]string{e}, adbargs...)
|
||||
break
|
||||
}
|
||||
@@ -330,7 +326,7 @@ func createHeaders() error {
|
||||
base, name := filepath.Split(args[0])
|
||||
args[0] = filepath.Join(base, "llvm-dlltool")
|
||||
var machine string
|
||||
switch prefix, _, _ := strings.Cut(name, "-"); prefix {
|
||||
switch strings.SplitN(name, "-", 2)[0] {
|
||||
case "i686":
|
||||
machine = "i386"
|
||||
case "x86_64":
|
||||
@@ -785,10 +781,10 @@ func copyFile(t *testing.T, dst, src string) {
|
||||
|
||||
func TestGo2C2Go(t *testing.T) {
|
||||
switch GOOS {
|
||||
case "darwin", "ios", "windows":
|
||||
// Non-ELF shared libraries don't support the multiple
|
||||
case "darwin", "ios":
|
||||
// Darwin shared libraries don't support the multiple
|
||||
// copies of the runtime package implied by this test.
|
||||
t.Skipf("linking c-shared into Go programs not supported on %s; issue 29061, 49457", GOOS)
|
||||
t.Skip("linking c-shared into Go programs not supported on Darwin; issue 29061")
|
||||
case "android":
|
||||
t.Skip("test fails on android; issue 29087")
|
||||
}
|
||||
@@ -839,51 +835,3 @@ func TestGo2C2Go(t *testing.T) {
|
||||
run(t, goenv, "go", "build", "-o", bin, "./go2c2go/m2")
|
||||
runExe(t, runenv, bin)
|
||||
}
|
||||
|
||||
func TestIssue36233(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
// Test that the export header uses GoComplex64 and GoComplex128
|
||||
// for complex types.
|
||||
|
||||
tmpdir, err := os.MkdirTemp("", "cshared-TestIssue36233")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer os.RemoveAll(tmpdir)
|
||||
|
||||
const exportHeader = "issue36233.h"
|
||||
|
||||
run(t, nil, "go", "tool", "cgo", "-exportheader", exportHeader, "-objdir", tmpdir, "./issue36233/issue36233.go")
|
||||
data, err := os.ReadFile(exportHeader)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
funcs := []struct{ name, signature string }{
|
||||
{"exportComplex64", "GoComplex64 exportComplex64(GoComplex64 v)"},
|
||||
{"exportComplex128", "GoComplex128 exportComplex128(GoComplex128 v)"},
|
||||
{"exportComplexfloat", "GoComplex64 exportComplexfloat(GoComplex64 v)"},
|
||||
{"exportComplexdouble", "GoComplex128 exportComplexdouble(GoComplex128 v)"},
|
||||
}
|
||||
|
||||
scanner := bufio.NewScanner(bytes.NewReader(data))
|
||||
var found int
|
||||
for scanner.Scan() {
|
||||
b := scanner.Bytes()
|
||||
for _, fn := range funcs {
|
||||
if bytes.Contains(b, []byte(fn.name)) {
|
||||
found++
|
||||
if !bytes.Contains(b, []byte(fn.signature)) {
|
||||
t.Errorf("function signature mismatch; got %q, want %q", b, fn.signature)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if err = scanner.Err(); err != nil {
|
||||
t.Errorf("scanner encountered error: %v", err)
|
||||
}
|
||||
if found != len(funcs) {
|
||||
t.Error("missing functions")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
// Copyright 2022 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
package main
|
||||
|
||||
// #include <complex.h>
|
||||
import "C"
|
||||
|
||||
//export exportComplex64
|
||||
func exportComplex64(v complex64) complex64 {
|
||||
return v
|
||||
}
|
||||
|
||||
//export exportComplex128
|
||||
func exportComplex128(v complex128) complex128 {
|
||||
return v
|
||||
}
|
||||
|
||||
//export exportComplexfloat
|
||||
func exportComplexfloat(v C.complexfloat) C.complexfloat {
|
||||
return v
|
||||
}
|
||||
|
||||
//export exportComplexdouble
|
||||
func exportComplexdouble(v C.complexdouble) C.complexdouble {
|
||||
return v
|
||||
}
|
||||
|
||||
func main() {}
|
||||
2
misc/cgo/testcshared/testdata/libgo2/dup2.go
vendored
2
misc/cgo/testcshared/testdata/libgo2/dup2.go
vendored
@@ -2,7 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
// +build darwin dragonfly freebsd linux,!arm64,!riscv64 netbsd openbsd
|
||||
// +build darwin dragonfly freebsd linux,!arm64 netbsd openbsd
|
||||
|
||||
package main
|
||||
|
||||
|
||||
2
misc/cgo/testcshared/testdata/libgo2/dup3.go
vendored
2
misc/cgo/testcshared/testdata/libgo2/dup3.go
vendored
@@ -2,7 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
// +build linux,arm64 linux,riscv64
|
||||
// +build linux,arm64
|
||||
|
||||
package main
|
||||
|
||||
|
||||
18
misc/cgo/testgodefs/testdata/issue48396.go
vendored
18
misc/cgo/testgodefs/testdata/issue48396.go
vendored
@@ -1,18 +0,0 @@
|
||||
// Copyright 2021 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
//
|
||||
// +build ignore
|
||||
|
||||
package main
|
||||
|
||||
/*
|
||||
// from <linux/kcm.h>
|
||||
struct issue48396 {
|
||||
int fd;
|
||||
int bpf_fd;
|
||||
};
|
||||
*/
|
||||
import "C"
|
||||
|
||||
type Issue48396 C.struct_issue48396
|
||||
3
misc/cgo/testgodefs/testdata/main.go
vendored
3
misc/cgo/testgodefs/testdata/main.go
vendored
@@ -28,9 +28,6 @@ var v7 = S{}
|
||||
// Test that #define'd type is fully defined
|
||||
var _ = issue38649{X: 0}
|
||||
|
||||
// Test that prefixes do not cause duplicate field names.
|
||||
var _ = Issue48396{Fd: 1, Bpf_fd: 2}
|
||||
|
||||
func main() {
|
||||
pass := true
|
||||
|
||||
|
||||
@@ -9,7 +9,6 @@ import (
|
||||
"os"
|
||||
"os/exec"
|
||||
"path/filepath"
|
||||
"runtime"
|
||||
"strings"
|
||||
"testing"
|
||||
)
|
||||
@@ -26,7 +25,6 @@ var filePrefixes = []string{
|
||||
"issue37621",
|
||||
"issue38649",
|
||||
"issue39534",
|
||||
"issue48396",
|
||||
}
|
||||
|
||||
func TestGoDefs(t *testing.T) {
|
||||
@@ -59,32 +57,9 @@ func TestGoDefs(t *testing.T) {
|
||||
t.Fatalf("%s: %v\n%s", strings.Join(cmd.Args, " "), err, cmd.Stderr)
|
||||
}
|
||||
|
||||
fn := fp + "_defs.go"
|
||||
if err := os.WriteFile(filepath.Join(dir, fn), out, 0644); err != nil {
|
||||
if err := os.WriteFile(filepath.Join(dir, fp+"_defs.go"), out, 0644); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
// Verify that command line arguments are not rewritten in the generated comment,
|
||||
// see go.dev/issue/52063
|
||||
hasGeneratedByComment := false
|
||||
for _, line := range strings.Split(strings.TrimSpace(string(out)), "\n") {
|
||||
cgoExe := "cgo"
|
||||
if runtime.GOOS == "windows" {
|
||||
cgoExe = "cgo.exe"
|
||||
}
|
||||
if !strings.HasPrefix(line, "// "+cgoExe+" -godefs") {
|
||||
continue
|
||||
}
|
||||
if want := "// " + cgoExe + " " + strings.Join(cmd.Args[3:], " "); line != want {
|
||||
t.Errorf("%s: got generated comment %q, want %q", fn, line, want)
|
||||
}
|
||||
hasGeneratedByComment = true
|
||||
break
|
||||
}
|
||||
|
||||
if !hasGeneratedByComment {
|
||||
t.Errorf("%s: comment with generating cgo -godefs command not found", fn)
|
||||
}
|
||||
}
|
||||
|
||||
main, err := os.ReadFile(filepath.Join("testdata", "main.go"))
|
||||
|
||||
@@ -265,6 +265,10 @@ func TestIssue25756(t *testing.T) {
|
||||
|
||||
// Test with main using -buildmode=pie with plugin for issue #43228
|
||||
func TestIssue25756pie(t *testing.T) {
|
||||
if os.Getenv("GO_BUILDER_NAME") == "darwin-arm64-11_0-toothrot" || os.Getenv("GO_BUILDER_NAME") == "darwin-arm64-12_0-toothrot" {
|
||||
t.Skip("broken on darwin/arm64 builder in sharded mode; see issue 46239")
|
||||
}
|
||||
|
||||
goCmd(t, "build", "-buildmode=plugin", "-o", "life.so", "./issue25756/plugin")
|
||||
goCmd(t, "build", "-buildmode=pie", "-o", "issue25756pie.exe", "./issue25756/main.go")
|
||||
run(t, "./issue25756pie.exe")
|
||||
|
||||
@@ -1,84 +0,0 @@
|
||||
// Copyright 2021 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package sanitizers_test
|
||||
|
||||
import (
|
||||
"strings"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestASAN(t *testing.T) {
|
||||
goos, err := goEnv("GOOS")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
goarch, err := goEnv("GOARCH")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
// The asan tests require support for the -asan option.
|
||||
if !aSanSupported(goos, goarch) {
|
||||
t.Skipf("skipping on %s/%s; -asan option is not supported.", goos, goarch)
|
||||
}
|
||||
|
||||
t.Parallel()
|
||||
requireOvercommit(t)
|
||||
config := configure("address")
|
||||
config.skipIfCSanitizerBroken(t)
|
||||
|
||||
mustRun(t, config.goCmd("build", "std"))
|
||||
|
||||
cases := []struct {
|
||||
src string
|
||||
memoryAccessError string
|
||||
errorLocation string
|
||||
}{
|
||||
{src: "asan1_fail.go", memoryAccessError: "heap-use-after-free", errorLocation: "asan1_fail.go:25"},
|
||||
{src: "asan2_fail.go", memoryAccessError: "heap-buffer-overflow", errorLocation: "asan2_fail.go:31"},
|
||||
{src: "asan3_fail.go", memoryAccessError: "use-after-poison", errorLocation: "asan3_fail.go:13"},
|
||||
{src: "asan4_fail.go", memoryAccessError: "use-after-poison", errorLocation: "asan4_fail.go:13"},
|
||||
{src: "asan5_fail.go", memoryAccessError: "use-after-poison", errorLocation: "asan5_fail.go:18"},
|
||||
{src: "asan_useAfterReturn.go"},
|
||||
{src: "asan_unsafe_fail1.go", memoryAccessError: "use-after-poison", errorLocation: "asan_unsafe_fail1.go:25"},
|
||||
{src: "asan_unsafe_fail2.go", memoryAccessError: "use-after-poison", errorLocation: "asan_unsafe_fail2.go:25"},
|
||||
{src: "asan_unsafe_fail3.go", memoryAccessError: "use-after-poison", errorLocation: "asan_unsafe_fail3.go:18"},
|
||||
}
|
||||
for _, tc := range cases {
|
||||
tc := tc
|
||||
name := strings.TrimSuffix(tc.src, ".go")
|
||||
t.Run(name, func(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
dir := newTempDir(t)
|
||||
defer dir.RemoveAll(t)
|
||||
|
||||
outPath := dir.Join(name)
|
||||
mustRun(t, config.goCmd("build", "-o", outPath, srcPath(tc.src)))
|
||||
|
||||
cmd := hangProneCmd(outPath)
|
||||
if tc.memoryAccessError != "" {
|
||||
outb, err := cmd.CombinedOutput()
|
||||
out := string(outb)
|
||||
if err != nil && strings.Contains(out, tc.memoryAccessError) {
|
||||
// This string is output if the
|
||||
// sanitizer library needs a
|
||||
// symbolizer program and can't find it.
|
||||
const noSymbolizer = "external symbolizer"
|
||||
// Check if -asan option can correctly print where the error occurred.
|
||||
if tc.errorLocation != "" &&
|
||||
!strings.Contains(out, tc.errorLocation) &&
|
||||
!strings.Contains(out, noSymbolizer) &&
|
||||
compilerSupportsLocation() {
|
||||
|
||||
t.Errorf("%#q exited without expected location of the error\n%s; got failure\n%s", strings.Join(cmd.Args, " "), tc.errorLocation, out)
|
||||
}
|
||||
return
|
||||
}
|
||||
t.Fatalf("%#q exited without expected memory access error\n%s; got failure\n%s", strings.Join(cmd.Args, " "), tc.memoryAccessError, out)
|
||||
}
|
||||
mustRun(t, cmd)
|
||||
})
|
||||
}
|
||||
}
|
||||
@@ -218,23 +218,6 @@ func compilerVersion() (version, error) {
|
||||
return compiler.version, compiler.err
|
||||
}
|
||||
|
||||
// compilerSupportsLocation reports whether the compiler should be
|
||||
// able to provide file/line information in backtraces.
|
||||
func compilerSupportsLocation() bool {
|
||||
compiler, err := compilerVersion()
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
switch compiler.name {
|
||||
case "gcc":
|
||||
return compiler.major >= 10
|
||||
case "clang":
|
||||
return true
|
||||
default:
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
type compilerCheck struct {
|
||||
once sync.Once
|
||||
err error
|
||||
@@ -284,11 +267,6 @@ func configure(sanitizer string) *config {
|
||||
c.ldFlags = append(c.ldFlags, "-fPIC", "-static-libtsan")
|
||||
}
|
||||
|
||||
case "address":
|
||||
c.goFlags = append(c.goFlags, "-asan")
|
||||
// Set the debug mode to print the C stack trace.
|
||||
c.cFlags = append(c.cFlags, "-g")
|
||||
|
||||
default:
|
||||
panic(fmt.Sprintf("unrecognized sanitizer: %q", sanitizer))
|
||||
}
|
||||
@@ -366,7 +344,7 @@ func (c *config) checkCSanitizer() (skip bool, err error) {
|
||||
if os.IsNotExist(err) {
|
||||
return true, fmt.Errorf("%#q failed to produce executable: %v", strings.Join(cmd.Args, " "), err)
|
||||
}
|
||||
snippet, _, _ := bytes.Cut(out, []byte("\n"))
|
||||
snippet := bytes.SplitN(out, []byte{'\n'}, 2)[0]
|
||||
return true, fmt.Errorf("%#q generated broken executable: %v\n%s", strings.Join(cmd.Args, " "), err, snippet)
|
||||
}
|
||||
|
||||
@@ -472,14 +450,3 @@ func mSanSupported(goos, goarch string) bool {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
// aSanSupported is a copy of the function cmd/internal/sys.ASanSupported,
|
||||
// because the internal pacakage can't be used here.
|
||||
func aSanSupported(goos, goarch string) bool {
|
||||
switch goos {
|
||||
case "linux":
|
||||
return goarch == "amd64" || goarch == "arm64"
|
||||
default:
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user