From 6cd8537fd1191022d54f7bed469093702728fb5e Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Thu, 10 Jun 2010 13:30:39 -0700 Subject: [PATCH] test: check that surrogate pair runes and huge rune values are rejected R=r CC=golang-dev https://golang.org/cl/1615042 --- test/char_lit1.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 test/char_lit1.go diff --git a/test/char_lit1.go b/test/char_lit1.go new file mode 100644 index 0000000000..ccf1cc9fcf --- /dev/null +++ b/test/char_lit1.go @@ -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" +) +