anchor.diff:      OptAcc.
   
   
  --spec convert_option_no_arg(option_spec()) -> option().
  +-spec convert_option_no_arg(option_spec()) -> compound_option().
   convert_option_no_arg({Name, _Short, _Long, ArgSpec, _Help}) ->
       case ArgSpec of
           % Special case for booleans: if there is no argument we assume
  
positive.code:                   }.
  
  
  -spec parse([option_spec()], string() | [string()]) -> {ok, {[option()], [string()]}} | {error, {Reason :: atom(), Data :: any()}}.
  %%--------------------------------------------------------------------
  %% @spec parse(OptSpecList::[option_spec()], Args::string() | [string()]) -> [option()].
  %% @doc  Parse the command line options and arguments returning a list of tuples
  %%       and/or atoms using the Erlang convention for sending options to a
  %%       function.
  %%--------------------------------------------------------------------
  parse(OptSpecList, CmdLine) ->
      try
          Args = if
  
negative.code: 
  
  -spec parse([option_spec()], [option()], [string()], integer(), [string()]) ->
      {ok, {[option()], [string()]}}.
  %% Process the option terminator.
  parse(OptSpecList, OptAcc, ArgAcc, _ArgPos, ["--" | Tail]) ->
      % Any argument present after the terminator is not considered an option.
  