aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/base
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@golang.org>2021-03-23 15:24:27 -0700
committerIan Lance Taylor <iant@golang.org>2021-03-23 23:09:33 +0000
commit87a3ac5f5328ea0a6169cfc44bdb081014fcd3ec (patch)
treeec0c5ddd3644e4771724ab9d6a71b843b668a095 /src/cmd/compile/internal/base
parent769d4b68ef72125de068a060220c3dbd9ba65c43 (diff)
downloadgo-87a3ac5f5328ea0a6169cfc44bdb081014fcd3ec.tar.gz
go-87a3ac5f5328ea0a6169cfc44bdb081014fcd3ec.zip
cmd/compile: don't let -race override explicit -d=checkptr=0
Change-Id: Icfa204761045b72a8ea173fd55eddf1f0e58d819 Reviewed-on: https://go-review.googlesource.com/c/go/+/304253 Trust: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Diffstat (limited to 'src/cmd/compile/internal/base')
-rw-r--r--src/cmd/compile/internal/base/flag.go10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/cmd/compile/internal/base/flag.go b/src/cmd/compile/internal/base/flag.go
index eb46ed99af..33c2c862b0 100644
--- a/src/cmd/compile/internal/base/flag.go
+++ b/src/cmd/compile/internal/base/flag.go
@@ -161,6 +161,8 @@ func ParseFlags() {
Flag.WB = true
Debug.InlFuncsWithClosures = 1
+ Debug.Checkptr = -1 // so we can tell whether it is set explicitly
+
Flag.Cfg.ImportMap = make(map[string]string)
objabi.AddVersionFlag() // -V
@@ -216,7 +218,9 @@ func ParseFlags() {
}
if Flag.Race || Flag.MSan {
// -race and -msan imply -d=checkptr for now.
- Debug.Checkptr = 1
+ if Debug.Checkptr == -1 { // if not set explicitly
+ Debug.Checkptr = 1
+ }
}
if Flag.CompilingRuntime && Flag.N != 0 {
@@ -237,6 +241,10 @@ func ParseFlags() {
Debug.Libfuzzer = 0
}
+ if Debug.Checkptr == -1 { // if not set explicitly
+ Debug.Checkptr = 0
+ }
+
// set via a -d flag
Ctxt.Debugpcln = Debug.PCTab
}