1// errorcheck
2
3// Copyright 2009 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
7// Verify that illegal character literals are detected.
8// Does not compile.
9
10package main
11
12const (
13	// check that surrogate pair elements are invalid
14	// (d800-dbff, dc00-dfff).
15	_ = '\ud7ff' // ok
16	_ = '\ud800'  // ERROR "Unicode|unicode"
17	_ = "\U0000D999"  // ERROR "Unicode|unicode"
18	_ = '\udc01' // ERROR "Unicode|unicode"
19	_ = '\U0000dddd'  // ERROR "Unicode|unicode"
20	_ = '\udfff' // ERROR "Unicode|unicode"
21	_ = '\ue000' // ok
22	_ = '\U0010ffff'  // ok
23	_ = '\U00110000'  // ERROR "Unicode|unicode"
24	_ = "abc\U0010ffffdef"  // ok
25	_ = "abc\U00110000def"  // ERROR "Unicode|unicode"
26	_ = '\Uffffffff'  // ERROR "Unicode|unicode"
27)
28
29