mirror of
				https://github.com/golang/go.git
				synced 2025-10-31 00:30:57 +00:00 
			
		
		
		
	 53fd522c0d
			
		
	
	
		53fd522c0d
		
	
	
	
	
		
			
			Follows suit with https://go-review.googlesource.com/#/c/20111. Generated by running $ grep -R 'Go Authors. All' * | cut -d":" -f1 | while read F;do perl -pi -e 's/Go Authors. All/Go Authors. All/g' $F;done The code in cmd/internal/unvendor wasn't changed. Fixes #15213 Change-Id: I4f235cee0a62ec435f9e8540a1ec08ae03b1a75f Reviewed-on: https://go-review.googlesource.com/21819 Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
		
			
				
	
	
		
			99 lines
		
	
	
	
		
			3.4 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			99 lines
		
	
	
	
		
			3.4 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // errorcheck
 | |
| 
 | |
| // Copyright 2011 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.
 | |
| 
 | |
| // Verify that illegal conversions involving strings are detected.
 | |
| // Does not compile.
 | |
| 
 | |
| package main
 | |
| 
 | |
| type Tbyte []byte
 | |
| type Trune []rune
 | |
| type Tint64 []int64
 | |
| type Tstring string
 | |
| 
 | |
| func main() {
 | |
| 	s := "hello"
 | |
| 	sb := []byte("hello")
 | |
| 	sr := []rune("hello")
 | |
| 	si := []int64{'h', 'e', 'l', 'l', 'o'}
 | |
| 
 | |
| 	ts := Tstring(s)
 | |
| 	tsb := Tbyte(sb)
 | |
| 	tsr := Trune(sr)
 | |
| 	tsi := Tint64(si)
 | |
| 
 | |
| 	_ = string(s)
 | |
| 	_ = []byte(s)
 | |
| 	_ = []rune(s)
 | |
| 	_ = []int64(s) // ERROR "cannot convert.*\[\]int64|invalid type conversion"
 | |
| 	_ = Tstring(s)
 | |
| 	_ = Tbyte(s)
 | |
| 	_ = Trune(s)
 | |
| 	_ = Tint64(s) // ERROR "cannot convert.*Tint64|invalid type conversion"
 | |
| 
 | |
| 	_ = string(sb)
 | |
| 	_ = []byte(sb)
 | |
| 	_ = []rune(sb)  // ERROR "cannot convert.*\[\]rune|invalid type conversion"
 | |
| 	_ = []int64(sb) // ERROR "cannot convert.*\[\]int64|invalid type conversion"
 | |
| 	_ = Tstring(sb)
 | |
| 	_ = Tbyte(sb)
 | |
| 	_ = Trune(sb)  // ERROR "cannot convert.*Trune|invalid type conversion"
 | |
| 	_ = Tint64(sb) // ERROR "cannot convert.*Tint64|invalid type conversion"
 | |
| 
 | |
| 	_ = string(sr)
 | |
| 	_ = []byte(sr) // ERROR "cannot convert.*\[\]byte|invalid type conversion"
 | |
| 	_ = []rune(sr)
 | |
| 	_ = []int64(sr) // ERROR "cannot convert.*\[\]int64|invalid type conversion"
 | |
| 	_ = Tstring(sr)
 | |
| 	_ = Tbyte(sr) // ERROR "cannot convert.*Tbyte|invalid type conversion"
 | |
| 	_ = Trune(sr)
 | |
| 	_ = Tint64(sr) // ERROR "cannot convert.*Tint64|invalid type conversion"
 | |
| 
 | |
| 	_ = string(si) // ERROR "cannot convert.* string|invalid type conversion"
 | |
| 	_ = []byte(si) // ERROR "cannot convert.*\[\]byte|invalid type conversion"
 | |
| 	_ = []rune(si) // ERROR "cannot convert.*\[\]rune|invalid type conversion"
 | |
| 	_ = []int64(si)
 | |
| 	_ = Tstring(si) // ERROR "cannot convert.*Tstring|invalid type conversion"
 | |
| 	_ = Tbyte(si)   // ERROR "cannot convert.*Tbyte|invalid type conversion"
 | |
| 	_ = Trune(si)   // ERROR "cannot convert.*Trune|invalid type conversion"
 | |
| 	_ = Tint64(si)
 | |
| 
 | |
| 	_ = string(ts)
 | |
| 	_ = []byte(ts)
 | |
| 	_ = []rune(ts)
 | |
| 	_ = []int64(ts) // ERROR "cannot convert.*\[\]int64|invalid type conversion"
 | |
| 	_ = Tstring(ts)
 | |
| 	_ = Tbyte(ts)
 | |
| 	_ = Trune(ts)
 | |
| 	_ = Tint64(ts) // ERROR "cannot convert.*Tint64|invalid type conversion"
 | |
| 
 | |
| 	_ = string(tsb)
 | |
| 	_ = []byte(tsb)
 | |
| 	_ = []rune(tsb)  // ERROR "cannot convert.*\[\]rune|invalid type conversion"
 | |
| 	_ = []int64(tsb) // ERROR "cannot convert.*\[\]int64|invalid type conversion"
 | |
| 	_ = Tstring(tsb)
 | |
| 	_ = Tbyte(tsb)
 | |
| 	_ = Trune(tsb)  // ERROR "cannot convert.*Trune|invalid type conversion"
 | |
| 	_ = Tint64(tsb) // ERROR "cannot convert.*Tint64|invalid type conversion"
 | |
| 
 | |
| 	_ = string(tsr)
 | |
| 	_ = []byte(tsr) // ERROR "cannot convert.*\[\]byte|invalid type conversion"
 | |
| 	_ = []rune(tsr)
 | |
| 	_ = []int64(tsr) // ERROR "cannot convert.*\[\]int64|invalid type conversion"
 | |
| 	_ = Tstring(tsr)
 | |
| 	_ = Tbyte(tsr) // ERROR "cannot convert.*Tbyte|invalid type conversion"
 | |
| 	_ = Trune(tsr)
 | |
| 	_ = Tint64(tsr) // ERROR "cannot convert.*Tint64|invalid type conversion"
 | |
| 
 | |
| 	_ = string(tsi) // ERROR "cannot convert.* string|invalid type conversion"
 | |
| 	_ = []byte(tsi) // ERROR "cannot convert.*\[\]byte|invalid type conversion"
 | |
| 	_ = []rune(tsi) // ERROR "cannot convert.*\[\]rune|invalid type conversion"
 | |
| 	_ = []int64(tsi)
 | |
| 	_ = Tstring(tsi) // ERROR "cannot convert.*Tstring|invalid type conversion"
 | |
| 	_ = Tbyte(tsi)   // ERROR "cannot convert.*Tbyte|invalid type conversion"
 | |
| 	_ = Trune(tsi)   // ERROR "cannot convert.*Trune|invalid type conversion"
 | |
| 	_ = Tint64(tsi)
 | |
| }
 |