From: René Scharfe Date: Sun, 03 Mar 2024 12:19:37 GMT Subject: [PATCH v2 0/6] parse-options: long option parsing fixes and cleanup Message-ID: <20240303121944.20627-1-l.s.r@web.de> In-Reply-To: <20240224212953.44026-1-l.s.r@web.de> Fix two corner cases in patches 1 and 4, refactor the code in patches 2 and 3 to prepare the second fix, bonus patches 5 and 6 simplify the code and improve readability. Changes since v1: * Added sign-off. parse-options: recognize abbreviated negated option with arg parse-options: set arg of abbreviated option lazily parse-options: factor out register_abbrev() and struct parsed_option parse-options: detect ambiguous self-negation parse-options: normalize arg and long_name before comparison parse-options: rearrange long_name matching code parse-options.c | 137 ++++++++++++++++++---------------- t/t0040-parse-options.sh | 16 ++++ t/t1502-rev-parse-parseopt.sh | 11 +++ 3 files changed, 100 insertions(+), 64 deletions(-) -- 2.44.0