anchor.diff:  reg4("[^" ++ S0) ->
       case char_class(S0) of
   	{Cc,[$]|S1]} -> {{comp_class,Cc},S1};
  -	{Cc,S} -> throw({error,{unterminated,"["}})
  +	{_Cc,_S} -> throw({error,{unterminated,"["}})
       end;
   reg4([$[|S0]) ->
       case char_class(S0) of
   	{Cc,[$]|S1]} -> {{char_class,Cc},S1};
  -	{Cc,S1} -> throw({error,{unterminated,"["}})
  +	{_Cc,_S1} -> throw({error,{unterminated,"["}})
       end;
   %reg4([$"|S0]) ->
   %    case char_string(S0) of
  
positive.code: 
  %% in_char_class(Char, Class) -> bool().
  
  in_char_class(C, [{C1,C2}|Cc]) when C >= C1, C =< C2 -> true;
  in_char_class(C, [C|Cc]) -> true;
  in_char_class(C, [_|Cc]) -> in_char_class(C, Cc);
  in_char_class(C, []) -> false.
  
  %% re_apply_or(Match1, Match2) -> re_app_res().
  %%  If we want the best match then choose the longest match, else just
  %%  choose one by trying sequentially.
  
  re_apply_or({match,P1,S1,G1}, {match,P2,S2,G2}) when P1 >= P2 -> {match,P1,S1,G1};
  re_apply_or({match,P1,S1,G1}, {match,P2,S2,G2}) -> {match,P2,S2,G2};
  re_apply_or(nomatch, R2) -> R2;
  re_apply_or(R1, nomatch) -> R1.
  
  
negative.code: %% Portions created by Ericsson are Copyright 1999, Ericsson Utvecklings
  %% AB. All Rights Reserved.''
  %% 
  %%     Id
  %%
  -module(group_regexp).
  
  