| // run | 
 |  | 
 | // Copyright 2012 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. | 
 |  | 
 | // Was discarding function calls made for arguments named _ | 
 | // in inlined functions.  Issue 3593. | 
 |  | 
 | package main | 
 |  | 
 | var did int | 
 |  | 
 | func main() { | 
 | 	foo(side()) | 
 | 	foo2(side(), side()) | 
 | 	foo3(side(), side()) | 
 | 	T.m1(T(side())) | 
 | 	T(1).m2(side()) | 
 | 	const want = 7 | 
 | 	if did != want { | 
 | 		println("BUG: missing", want-did, "calls") | 
 | 	} | 
 | } | 
 |  | 
 | func foo(_ int) {} | 
 | func foo2(_, _ int) {} | 
 | func foo3(int, int) {} | 
 | type T int | 
 | func (_ T) m1() {} | 
 | func (t T) m2(_ int) {} | 
 |  | 
 | func side() int { | 
 | 	did++ | 
 | 	return 1 | 
 | } |