git/list[1] front-page[2] threads[3] people[4] search[5] about
wed 2026-10-07 16:50 UTC

Re: [PATCH] regex: not all macOS platforms seem to have REG_ENHANCED

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 20, 2026, 16:50 UTC
Message-ID
<xmqqcy0yfnsb.fsf@gitster.g>
In-Reply-To
<6636e7d2-7a1d-0108-2e62-af27a3ae3cf3@gmx.de>
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
> While this lets the build pass, it _does_ change behavior. Where
> previously, EREs were enforced, now BREs are silently enforced.

Enhanced is not about ERE/BRE but yes, you're right. A build that does not support REG_ENHANCED (due to the lack of definition in the header) would compile but without enhanced features like \b, so the "patch" above would not something I want to apply and blamed by macOS users for X-<.

Show 12 quoted lines
> So it might be desirable to instead imitate what `meson.build` does,
> namely define `USE_ENHANCED_BASIC_REGULAR_EXPRESSIONS` on macOS when
> compiling with `clang`.
>
> But that should already be the case:
> https://gitlab.com/git-scm/git/-/blob/v2.53.0/config.mak.uname#L151
>
>> ifeq ($(uname_S),Darwin)
>> [...]
>> 	USE_ENHANCED_BASIC_REGULAR_EXPRESSIONS = YesPlease
>
> So: hmm.
Hmm, indeed.
Previous: Junio C HamanoNext: Junio C Hamano
Message 13 of 14 in “regex: not all macOS platforms seem to have REG_ENHANCED”
  1. regex: not all macOS platforms seem to have REG_ENHANCEDJunio C Hamano, Mar 19, 2026
  2. René ScharfeMar 19, 2026
  3. Junio C HamanoMar 20, 2026
  4. Johannes SchindelinMar 20, 2026
  5. Johannes SchindelinMar 20, 2026
  6. Johannes SchindelinMar 20, 2026
  7. Johannes SchindelinMar 20, 2026
  8. Johannes SchindelinMar 20, 2026
  9. René ScharfeMar 20, 2026
  10. Johannes SchindelinMar 20, 2026
  11. René ScharfeMar 20, 2026
  12. Junio C HamanoMar 20, 2026
  13. Junio C HamanoMar 20, 2026
  14. Junio C HamanoMar 20, 2026

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.