| // Copyright 2021 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. |
| |
| // Check Go language version-specific errors. |
| |
| package go1_12 // go1.12 |
| |
| // numeric literals |
| const ( |
| _ = 1_000 // ERROR "underscores in numeric literals requires go1.13 or later" |
| _ = 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: signed shift count s \(variable of type int\) requires go1.13 or later" |
| _ = 1 >> s // ERROR "signed shift count" |
| ) |
| |