- printf(" { %c-%s%c,\n %s,\n %s, %u, %s, %s, %s }%s\n",
- quote, opts[i], quote, hlp, back_chain[i], len,
- switch_flags(flags[i]),
- var_ref(flags[i]), var_set(flags[i]), comma)
+ neg = opt_args("Negative", flags[i]);
+ if (neg != "")
+ idx = indices[neg]
+ else {
+ if (flag_set_p("RejectNegative", flags[i]))
+ idx = -1;
+ else {
+ if (opts[i] ~ "^[Wfm]")
+ idx = indices[opts[i]];
+ else
+ idx = -1;
+ }
+ }
+ printf(" { %c-%s%c,\n %s,\n %s, %u, %d,\n",
+ quote, opts[i], quote, hlp, back_chain[i], len, idx)
+ condition = opt_args("Condition", flags[i])
+ cl_flags = switch_flags(flags[i])
+ if (condition != "")
+ printf("#if %s\n" \
+ " %s,\n" \
+ "#else\n" \
+ " CL_DISABLED,\n" \
+ "#endif\n",
+ condition, cl_flags, cl_flags)
+ else
+ printf(" %s,\n", cl_flags)
+ printf(" %s, %s }%s\n", var_ref(opts[i], flags[i]),
+ var_set(flags[i]), comma)