@IF@ has_short_option @THEN@ case '@short_option@': /* @option_comment@. */ @ELSE@ /* @option_comment@. */ @gen_else@if (strcmp (long_options[option_index].name, "@long_option@") == 0) { @ENDIF@ if (local_args_info.@option_var_name@_given) { fprintf (stderr, "%s: `--@long_option@'@if@ has_short_option @then@ (`-@short_option@')@endif@ option given more than once%s\n", @package_var_name@, (additional_error ? additional_error : "")); goto failure; } @IF@ option_has_values @THEN@ if ((found = check_possible_values((optarg ? optarg : @IF@ defaultval:string != "" @THEN@ "@defaultval@" @ELSE@ 0 @ENDIF@), @option_values@)) < 0) { fprintf (stderr, "%s: %s argument, \"%s\", for option `--@long_option@'@if@ has_short_option @then@ (`-@short_option@')@endif@%s\n", @package_var_name@, (found == -2) ? "ambiguous" : "invalid", optarg, (additional_error ? additional_error : "")); goto failure; } @ENDIF@ if (args_info->@option_var_name@_given && ! override) continue; local_args_info.@option_var_name@_given = 1; args_info->@option_var_name@_given = 1;@update_group_count@ @update_arg@@IF@ has_short_option @THEN@@else@ } @ENDIF@