| 
									
										
										
										
											2008-06-06 16:56:18 -07:00
										 |  |  | // $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 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-01-20 14:40:40 -08:00
										 |  |  | type Element interface { | 
					
						
							| 
									
										
										
										
											2008-06-06 16:56:18 -07:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-01-20 14:40:40 -08:00
										 |  |  | type Vector struct { | 
					
						
							| 
									
										
										
										
											2008-06-06 16:56:18 -07:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func (v *Vector) Insert(i int, e Element) { | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func main() { | 
					
						
							|  |  |  | 	type I struct { val int; };  // BUG: can't be local; works if global | 
					
						
							| 
									
										
										
										
											2009-01-06 15:19:02 -08:00
										 |  |  | 	v := new(Vector); | 
					
						
							|  |  |  | 	v.Insert(0, new(I)); | 
					
						
							| 
									
										
										
										
											2008-06-06 16:56:18 -07:00
										 |  |  | } | 
					
						
							|  |  |  | /* | 
					
						
							|  |  |  | check: main_sigs_I: not defined | 
					
						
							|  |  |  | */ |