]> Cypherpunks repositories - gostls13.git/commitdiff
partial rune at end makes string range loop forever
authorRob Pike <r@golang.org>
Thu, 3 Sep 2009 20:33:16 +0000 (13:33 -0700)
committerRob Pike <r@golang.org>
Thu, 3 Sep 2009 20:33:16 +0000 (13:33 -0700)
R=rsc
DELTA=20  (20 added, 0 deleted, 0 changed)
OCL=34330
CL=34332

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

diff --git a/test/bugs/bug204.go b/test/bugs/bug204.go
new file mode 100644 (file)
index 0000000..6c35402
--- /dev/null
@@ -0,0 +1,24 @@
+// $G $D/$F.go && $L $F.$A && ./$A.out
+
+// 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
+
+func main() {
+       nchar := 0;
+       a := []int { '日', '本', '語', 0xFFFD };
+       for pos, char := range "日本語\xc0" {
+               if nchar >= len(a) {
+                       println("BUG");
+                       break;
+               }
+               if char != a[nchar] {
+                       println("expected", a[nchar], "got", char);
+                       println("BUG");
+                       break;
+               }
+               nchar++;
+       }
+}