1// errorcheck -lang=go1.12
2
3// Copyright 2019 The Go Authors. All rights reserved.
4// Use of this source code is governed by a BSD-style
5// license that can be found in the LICENSE file.
6
7package p
8
9// numeric literals
10const (
11	_ = 1_000 // ERROR "underscore in numeric literal requires go1.13 or later \(-lang was set to go1.12; check go.mod\)|requires go1.13"
12	_ = 0b111 // ERROR "binary literal requires go1.13 or later"
13	_ = 0o567 // ERROR "0o/0O-style octal literal requires go1.13 or later"
14	_ = 0xabc // ok
15	_ = 0x0p1 // ERROR "hexadecimal floating-point literal requires go1.13 or later"
16
17	_ = 0b111 // ERROR "binary"
18	_ = 0o567 // ERROR "octal"
19	_ = 0xabc // ok
20	_ = 0x0p1 // ERROR "hexadecimal floating-point"
21
22	_ = 1_000i // ERROR "underscore"
23	_ = 0b111i // ERROR "binary"
24	_ = 0o567i // ERROR "octal"
25	_ = 0xabci // ERROR "hexadecimal floating-point"
26	_ = 0x0p1i // ERROR "hexadecimal floating-point"
27)
28
29// signed shift counts
30var (
31	s int
32	_ = 1 << s // ERROR "invalid operation: 1 << s \(signed shift count type int\) requires go1.13 or later|signed shift count"
33	_ = 1 >> s // ERROR "signed shift count"
34)
35