code: func InvalidArgError(expected string, actual interface{}) {
  	ReportError("cannot use %#v (type %s) as type %s",
  		actual, reflect.TypeOf(actual), expected)
  }
docs: // InvalidArgError records an invalid argument error.
  // It is used by DSL functions that take dynamic arguments.