Previously, the packages that were imported by the test were not instrumented for coverage. This meant that a fuzz target in a stand-alone test file would not be able to perform coverage-guided fuzzing. The fix uses all of the imports, including those from the test files, when determining which packages to instrument. However, certain package should be ignored when walking the import graph. Otherwise, packages like internal/fuzz, and its imports, may be instrumented, which could lead to false positives for "interesting" corpus values. There was an additional bug which needed to be fixed in order for this to work. The bug was in the fact that the GcFlags which held `-d=libfuzzer` were being overwritten in some cases. The fix updates the way these flags are set in order to prevent this behavior. Change-Id: I21d336c29a33db1181bbae0fd23678d127fe52a0 Reviewed-on: https://go-review.googlesource.com/c/go/+/321960 Trust: Katie Hockman <katie@golang.org> Run-TryBot: Katie Hockman <katie@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com> |
||
|---|---|---|
| .github | ||
| api | ||
| doc | ||
| lib/time | ||
| misc | ||
| src | ||
| test | ||
| .gitattributes | ||
| .gitignore | ||
| AUTHORS | ||
| CONTRIBUTING.md | ||
| CONTRIBUTORS | ||
| LICENSE | ||
| PATENTS | ||
| README.md | ||
| SECURITY.md | ||
| codereview.cfg | ||
README.md
The Go Programming Language
Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.
Gopher image by Renee French, licensed under Creative Commons 3.0 Attributions license.
Our canonical Git repository is located at https://go.googlesource.com/go. There is a mirror of the repository at https://github.com/golang/go.
Unless otherwise noted, the Go source files are distributed under the BSD-style license found in the LICENSE file.
Download and Install
Binary Distributions
Official binary distributions are available at https://golang.org/dl/.
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://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://golang.org/doc/contribute.html.
Note that the Go project uses the issue tracker for bug reports and proposals only. See https://golang.org/wiki/Questions for a list of places to ask questions about the Go language.