-
Notifications
You must be signed in to change notification settings - Fork 18.7k
Closed
Labels
FrozenDueToAgeNeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.ToolsThis label describes issues relating to any tools in the x/tools repository.This label describes issues relating to any tools in the x/tools repository.help wanted
Milestone
Description
It would be nice to have sound pointer analysis models of the atomic primitives that contain pointers.
Currently the pointer analysis unsoundly ignores their use.
A failing test pointer analysis test go/pointer/testdata/atomic_value.go could be:
//go:build ignore
// +build ignore
package main
import "sync/atomic"
var g1 int
func main() {
var v atomic.Value
print(v.Load()) // @types
v.Store(&g1)
x := v.Load().(*int)
// Fails because the points-to set of x is empty.
print(x) // @pointsto command-line-arguments.g1
}Metadata
Metadata
Assignees
Labels
FrozenDueToAgeNeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.ToolsThis label describes issues relating to any tools in the x/tools repository.This label describes issues relating to any tools in the x/tools repository.help wanted