anchor.diff:  parse_attribute_type_and_value(Str) ->
       case parse_attribute_type(Str) of
   	{Rest,[]} -> 
  -	    error(expecting_attribute_type,Str);
  +	    parse_error(expecting_attribute_type,Str);
   	{Rest,Type} ->
   	    Rest2 = parse_equal_sign(Rest),
   	    {Rest3,Value} = parse_attribute_value(Rest2),
  
positive.code: %%%        []}}
  %%%
  %%% --------------------------------------------------------------------
  search(Handle, A) when pid(Handle), record(A, eldap_search) ->
      call_search(Handle, A);
  search(Handle, L) when pid(Handle), list(L) ->
      case catch parse_search_args(L) of
  	{error, Emsg}                  -> {error, Emsg};
  	A when record(A, eldap_search) -> call_search(Handle, A)
      end.
  
  call_search(Handle, A) ->
  
negative.code: v_filter({lessOrEqual,AV})    -> {lessOrEqual,AV};
  v_filter({approxMatch,AV})    -> {approxMatch,AV};
  v_filter({present,A})         -> {present,A};
  v_filter({substrings,S}) when is_record(S,'SubstringFilter') -> {substrings,S};
  v_filter(_Filter) -> throw({error,concat(["unknown filter: ",_Filter])}).
  
  v_modifications(Mods) ->
  