code: func NewOperandTypeErr(pos int, got ast.Value, expected ...string) error {
  
  	if len(expected) == 1 {
  		return NewOperandErr(pos, "must be %v but got %v", expected[0], ast.TypeName(got))
  	}
  
  	return NewOperandErr(pos, "must be one of {%v} but got %v", strings.Join(expected, ", "), ast.TypeName(got))
  }
docs: // NewOperandTypeErr returns an operand error indicating the operand's type was wrong.