1// run 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 7package main 8 9func main() { 10 var b [0]byte 11 s := string(b[0:]) // out of bounds trap 12 if s != "" { 13 panic("bad convert") 14 } 15 var b1 = [5]byte{'h', 'e', 'l', 'l', 'o'} 16 if string(b1[0:]) != "hello" { 17 panic("bad convert 1") 18 } 19 var b2 = make([]byte, 5) 20 for i := 0; i < 5; i++ { 21 b2[i] = b1[i] 22 } 23 if string(b2) != "hello" { 24 panic("bad convert 2") 25 } 26} 27