anchor.diff:  
   do_star(Pattern, [X|Rest], Mod) ->
     case wildcard_5(Pattern, [X|Rest], Mod) of
  -  	true  -> true;
  -  	false -> do_star(Pattern, Rest, Mod)
  +    true  -> true;
  +    false -> do_star(Pattern, Rest, Mod)
     end;
   do_star(Pattern, [], Mod) ->
     wildcard_5(Pattern, [], Mod).
   
   do_alt([Alt|Rest], File, Mod) ->
     case wildcard_5(Alt, File, Mod) of
  -  	true  -> true;
  -  	false -> do_alt(Rest, File, Mod)
  +    true  -> true;
  +    false -> do_alt(Rest, File, Mod)
     end;
   do_alt([], _File, _Mod) ->
     false.
  
positive.code:   compile_part(Rest, Upto, [star|Result]);
  compile_part([$[|Rest], Upto, Result) ->
    case compile_charset(Rest, ordsets:new()) of
    	{ok, Charset, Rest1} ->
  	    compile_part(Rest1, Upto, [Charset|Result]);
    	error ->
  	    compile_part(Rest, Upto, [$[|Result])
    end;
  compile_part([${|Rest], Upto, Result) ->
    case compile_alt(Rest) of
    	{ok, Alt} ->
  	    lists:reverse(Result, [Alt]);
    	error ->
  	    compile_part(Rest, Upto, [${|Result])
    end;
  compile_part([X|Rest], Upto, Result) ->
    compile_part(Rest, Upto, [X|Result]);
  
negative.code: 
  compile_alt(Pattern, Result) ->
    case compile_part_to_sep(Pattern) of
      {ok, $,, AltPattern, Rest} ->
        compile_alt(Rest, [AltPattern|Result]);
      {ok, $}, AltPattern, Rest} ->
        NewResult = [AltPattern|Result],
        RestPattern = compile_part(Rest),
        {ok, {alt, [Alt++RestPattern || Alt <- NewResult]}};
      Pattern ->
        error
    end.
  
  error(Reason) ->
  