go/test/fixedbugs/issue31747.go
Robert Griesemer 27fc32ff01 cmd/compile: better error message for language version errors
Fixes #33753.
Updates #31747.

Change-Id: Icc42b23405ead4f7f17b0ffa3611405454b6b271
Reviewed-on: https://go-review.googlesource.com/c/go/+/198491
Run-TryBot: Robert Griesemer <gri@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2019-10-03 04:48:44 +00:00

35 lines
1.1 KiB
Go

// errorcheck -lang=go1.12
// 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.
package p
// numeric literals
const (
_ = 1_000 // ERROR "underscores in numeric literals requires go1.13 or later \(-lang was set to go1.12; check go.mod\)"
_ = 0b111 // ERROR "binary literals requires go1.13 or later"
_ = 0o567 // ERROR "0o/0O-style octal literals requires go1.13 or later"
_ = 0xabc // ok
_ = 0x0p1 // ERROR "hexadecimal floating-point literals requires go1.13 or later"
_ = 0B111 // ERROR "binary"
_ = 0O567 // ERROR "octal"
_ = 0Xabc // ok
_ = 0X0P1 // ERROR "hexadecimal floating-point"
_ = 1_000i // ERROR "underscores"
_ = 0b111i // ERROR "binary"
_ = 0o567i // ERROR "octal"
_ = 0xabci // ERROR "hexadecimal floating-point"
_ = 0x0p1i // ERROR "hexadecimal floating-point"
)
// signed shift counts
var (
s int
_ = 1 << s // ERROR "invalid operation: 1 << s \(signed shift count type int\) requires go1.13 or later"
_ = 1 >> s // ERROR "signed shift count"
)