diff options
author | Tobias Klauser <tklauser@distanz.ch> | 2018-03-13 17:45:17 +0100 |
---|---|---|
committer | Tobias Klauser <tobias.klauser@gmail.com> | 2018-03-14 08:36:15 +0000 |
commit | d32018a50017b075cd46be6b1f5cfb5050337140 (patch) | |
tree | dc8195a2849e1b7517f164ebc5417f63c9d7eec6 /test/makemap.go | |
parent | 4d38d3ae33ed808f9430ff5a205faed4bc3f19c5 (diff) | |
download | go-d32018a50017b075cd46be6b1f5cfb5050337140.tar.gz go-d32018a50017b075cd46be6b1f5cfb5050337140.zip |
test: check that size argument errors are emitted at call site
Add tests for the "negative size argument in make.*" and "size argument
too large in make.*" error messages to appear at call sites in case the
size is a const defined on another line.
As suggested by Matthew in a comment on CL 69910.
Change-Id: I5c33d4bec4e3d20bb21fe8019df27999997ddff3
Reviewed-on: https://go-review.googlesource.com/100395
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Diffstat (limited to 'test/makemap.go')
-rw-r--r-- | test/makemap.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/test/makemap.go b/test/makemap.go index 60983c0d47..d19e6c3444 100644 --- a/test/makemap.go +++ b/test/makemap.go @@ -18,6 +18,12 @@ func main() { sink = make(T, -1) // ERROR "negative size argument in make.*" sink = make(T, uint64(1<<63)) // ERROR "size argument too large in make.*" + // Test that errors are emitted at call sites, not const declarations + const x = -1 + sink = make(T, x) // ERROR "negative size argument in make.*" + const y = uint64(1 << 63) + sink = make(T, y) // ERROR "size argument too large in make.*" + sink = make(T, 0.5) // ERROR "constant 0.5 truncated to integer" sink = make(T, 1.0) sink = make(T, float32(1.0)) // ERROR "non-integer size argument in make.*" |