]> Cypherpunks repositories - gostls13.git/commitdiff
test: check that surrogate pair runes and huge rune values are rejected
authorRuss Cox <rsc@golang.org>
Thu, 10 Jun 2010 20:30:39 +0000 (13:30 -0700)
committerRuss Cox <rsc@golang.org>
Thu, 10 Jun 2010 20:30:39 +0000 (13:30 -0700)
R=r
CC=golang-dev
https://golang.org/cl/1615042

test/char_lit1.go [new file with mode: 0644]

diff --git a/test/char_lit1.go b/test/char_lit1.go
new file mode 100644 (file)
index 0000000..ccf1cc9
--- /dev/null
@@ -0,0 +1,25 @@
+// errchk $G -e $F.go
+
+// Copyright 2009 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 main
+
+const (
+       // check that surrogate pair elements are invalid
+       // (d800-dbff, dc00-dfff).
+       _ = '\ud7ff' // ok
+       _ = '\ud800'  // ERROR "Unicode"
+       _ = "\U0000D999"  // ERROR "Unicode"
+       _ = '\udc01' // ERROR "Unicode"
+       _ = '\U0000dddd'  // ERROR "Unicode"
+       _ = '\udfff' // ERROR "Unicode"
+       _ = '\ue000' // ok
+       _ = '\U0010ffff'  // ok
+       _ = '\U00110000'  // ERROR "Unicode"
+       _ = "abc\U0010ffffdef"  // ok
+       _ = "abc\U00110000def"  // ERROR "Unicode"
+       _ = '\Uffffffff'  // ERROR "Unicode"
+)
+