Home | History | Annotate | Download | only in test
      1 // errorcheck
      2 
      3 // Copyright 2010 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 
      7 // Test line numbers in error messages.
      8 // Does not compile.
      9 
     10 package main
     11 
     12 var (
     13 	_ = x	// ERROR "undefined.*x"
     14 	_ = x	// ERROR "undefined.*x"
     15 	_ = x	// ERROR "undefined.*x"
     16 )
     17 
     18 type T struct {
     19 	y int
     20 }
     21 
     22 func foo() *T { return &T{y: 99} }
     23 func bar() int { return y }	// ERROR "undefined.*y"
     24 
     25 type T1 struct {
     26 	y1 int
     27 }
     28 
     29 func foo1() *T1 { return &T1{y1: 99} }
     30 var y1 = 2
     31 func bar1() int { return y1 }
     32 
     33 func f1(val interface{}) {
     34 	switch v := val.(type) {
     35 	default:
     36 		println(v)
     37 	}
     38 }
     39 
     40 func f2(val interface{}) {
     41 	switch val.(type) {
     42 	default:
     43 		println(v)	// ERROR "undefined.*v"
     44 	}
     45 }
     46