rl_variable_bind (name, value)
     const char *name, *value;
{
  register int i;
  int	v;

  /* Check for simple variables first. */
  i = find_boolean_var (name);
  if (i >= 0)
    {
      *boolean_varlist[i].value = bool_to_int (value);
      if (boolean_varlist[i].flags & V_SPECIAL)
	hack_special_boolean_var (i);
      return 0;
    }

  i = find_string_var (name);

  /* For the time being, string names without a handler function are simply
     ignored. */
  if (i < 0 || string_varlist[i].set_func == 0)
    {
      if (i < 0)
	_rl_init_file_error ("%s: unknown variable name", name);
      return 0;
    }

  v = (*string_varlist[i].set_func) (value);
  return v;
}
rl_variable_bind (name, value)
     const char *name, *value;
{
  register int i;
  int	v;

   
  i = find_boolean_var (name);
  if (i >= 0)
    {
      *boolean_varlist[i].value = bool_to_int (value);
      if (boolean_varlist[i].flags & V_SPECIAL)
	hack_special_boolean_var (i);
      return 0;
    }

  i = find_string_var (name);

   
  if (i < 0 || string_varlist[i].set_func == 0)
    {
      if (i < 0)
	_rl_init_file_error ("%s: unknown variable name", name);
      return 0;
    }

  v = (*string_varlist[i].set_func) (value);
  return v;
}