code: func (c *CallCommon) Signature() *types.Signature {
  	if c.Method != nil {
  		return c.Method.Type().(*types.Signature)
  	}
  	return c.Value.Type().Underlying().(*types.Signature)
  }
docs: // Signature returns the signature of the called function.
  //
  // For an "invoke"-mode call, the signature of the interface method is
  // returned.
  //
  // In either "call" or "invoke" mode, if the callee is a method, its
  // receiver is represented by sig.Recv, not sig.Params().At(0).
  //