mirror of
				https://github.com/golang/go.git
				synced 2025-10-31 08:40:55 +00:00 
			
		
		
		
	 4f61fc96b2
			
		
	
	
		4f61fc96b2
		
	
	
	
	
		
			
			The ken directory is untouched so we have some examples with explicit semis. R=gri CC=golang-dev https://golang.org/cl/2157041
		
			
				
	
	
		
			53 lines
		
	
	
	
		
			845 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
	
		
			845 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| // errchk $G -e $D/$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
 | |
| 
 | |
| import "sync"
 | |
| 
 | |
| type T struct {
 | |
| 	int
 | |
| 	sync.Mutex
 | |
| }
 | |
| 
 | |
| func main() {
 | |
| 	{
 | |
| 		var x, y sync.Mutex
 | |
| 		x = y	// ERROR "assignment.*Mutex"
 | |
| 		_ = x
 | |
| 	}
 | |
| 	{
 | |
| 		var x, y T
 | |
| 		x = y	// ERROR "assignment.*Mutex"
 | |
| 		_ = x
 | |
| 	}
 | |
| 	{
 | |
| 		var x, y [2]sync.Mutex
 | |
| 		x = y	// ERROR "assignment.*Mutex"
 | |
| 		_ = x
 | |
| 	}
 | |
| 	{
 | |
| 		var x, y [2]T
 | |
| 		x = y	// ERROR "assignment.*Mutex"
 | |
| 		_ = x
 | |
| 	}
 | |
| 	{
 | |
| 		x := sync.Mutex{0, 0}	// ERROR "assignment.*Mutex"
 | |
| 		_ = x
 | |
| 	}
 | |
| 	{
 | |
| 		x := sync.Mutex{key: 0}	// ERROR "(unknown|assignment).*Mutex"
 | |
| 		_ = x
 | |
| 	}
 | |
| 	{
 | |
| 		x := &sync.Mutex{}	// ok
 | |
| 		var y sync.Mutex	// ok
 | |
| 		y = *x	// ERROR "assignment.*Mutex"
 | |
| 		*x = y	// ERROR "assignment.*Mutex"
 | |
| 		_ = x
 | |
| 		_ = y
 | |
| 	}		
 | |
| }
 |