| // run | 
 |  | 
 | // Copyright 2014 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. | 
 |  | 
 | // Issue 8325: corrupted byte operations during optimization | 
 | // pass. | 
 |  | 
 | package main | 
 |  | 
 | const alphanum = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" | 
 |  | 
 | func main() { | 
 | 	var bytes = []byte{10, 20, 30, 40, 50} | 
 |  | 
 | 	for i, b := range bytes { | 
 | 		bytes[i] = alphanum[b%byte(len(alphanum))] | 
 | 	} | 
 |  | 
 | 	for _, b := range bytes { | 
 | 		switch { | 
 | 		case '0' <= b && b <= '9', | 
 | 			'A' <= b && b <= 'Z': | 
 | 		default: | 
 | 			println("found a bad character", string(b)) | 
 | 			panic("BUG") | 
 | 		} | 
 |  | 
 | 	} | 
 | } |