]> Cypherpunks repositories - gostls13.git/commitdiff
test: add escape regress for empty variadic function
authorMichael Fraenkel <michael.fraenkel@gmail.com>
Wed, 17 Apr 2019 00:45:41 +0000 (20:45 -0400)
committerMatthew Dempsky <mdempsky@google.com>
Wed, 17 Apr 2019 17:05:53 +0000 (17:05 +0000)
Fixes #30898

Change-Id: I903dd8ed2b10c49b2291ad0858774f3ca2f5b223
Reviewed-on: https://go-review.googlesource.com/c/go/+/172422
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>

test/fixedbugs/issue30898.go [new file with mode: 0644]

diff --git a/test/fixedbugs/issue30898.go b/test/fixedbugs/issue30898.go
new file mode 100644 (file)
index 0000000..012d5a2
--- /dev/null
@@ -0,0 +1,19 @@
+// errorcheck -0 -m
+
+// Copyright 2019 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 escape analysis for functions with variadic arguments
+
+package foo
+
+func debugf(format string, args ...interface{}) { // ERROR "can inline debugf" "format does not escape" "args does not escape"
+       // Dummy implementation for non-debug build.
+       // A non-empty implementation would be enabled with a build tag.
+}
+
+func bar() { // ERROR "can inline bar"
+       value := 10
+       debugf("value is %d", value) // ERROR "inlining call to debugf" "value does not escape" "\[\]interface {} literal does not escape"
+}