From: Manish Goregaokar Date: Sat, 26 Aug 2017 06:10:50 +0000 (-0700) Subject: cmd/vet: add test that copylock catches copying a sync.Map X-Git-Tag: go1.10beta1~1297 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=29d11ef43611312311af6ecf551d83a37175f1bf;p=gostls13.git cmd/vet: add test that copylock catches copying a sync.Map fixes #21635 Change-Id: I78716d47b6a930074e5394f7171d5f545dfba0bc Reviewed-on: https://go-review.googlesource.com/59690 Reviewed-by: Bryan Mills Reviewed-by: Rob Pike Run-TryBot: Bryan Mills TryBot-Result: Gobot Gobot --- diff --git a/src/cmd/vet/testdata/copylock_func.go b/src/cmd/vet/testdata/copylock_func.go index 0f7ffcbccb..280747a3bf 100644 --- a/src/cmd/vet/testdata/copylock_func.go +++ b/src/cmd/vet/testdata/copylock_func.go @@ -11,12 +11,14 @@ import "sync" func OkFunc(*sync.Mutex) {} func BadFunc(sync.Mutex) {} // ERROR "BadFunc passes lock by value: sync.Mutex" +func BadFunc2(sync.Map) {} // ERROR "BadFunc2 passes lock by value: sync.Map contains sync.Mutex" func OkRet() *sync.Mutex {} func BadRet() sync.Mutex {} // Don't warn about results var ( - OkClosure = func(*sync.Mutex) {} - BadClosure = func(sync.Mutex) {} // ERROR "func passes lock by value: sync.Mutex" + OkClosure = func(*sync.Mutex) {} + BadClosure = func(sync.Mutex) {} // ERROR "func passes lock by value: sync.Mutex" + BadClosure2 = func(sync.Map) {} // ERROR "func passes lock by value: sync.Map contains sync.Mutex" ) type EmbeddedRWMutex struct {