Subject: Re: git bug: Perl compatible regular expressions do not work as expected

From: Junio C Hamano <[email-masked]>
Date: Tue, 28 Mar 2023 06:47:41 -0700

Junio C Hamano <[email-masked]> writes:

> I suspect that 54463d32ef was done in a conservative way to avoid
> unintended side effects to make ERE "enhanced".  I am not 100%
> certain, but after reading the documentation you pointed at, I do
> not see a valid expression without ENHANCED flag starting to mean
> totally different thing with it (well, an extra '?' turning a
> pattern from greedy to minimal may count as such a change in
> semantics, but I do not see anybody sensible adding an extra '?'
> in a pattern in the first place).

Sorry, but that is nonsense.  We cannot avoid being backward
incompatible if we suddenly flip the "enhanced" bit for BRE.  A
sane pattern written expecting non-enhanced BRE can change its
meaning when the "enhanced" mode is enabled.

But if "enhanced" is what users want, and if that is what the other
tools on the platform use, then perhaps flipping the "enhanced" bit
may not be a bad idea.