Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/usr.bin/m4 m4 -g: { and } aren't supported in patsubst() or ...
details: https://anonhg.NetBSD.org/src/rev/1f96b22843b3
branches: trunk
changeset: 375989:1f96b22843b3
user: lukem <lukem%NetBSD.org@localhost>
date: Wed May 24 21:58:19 2023 +0000
description:
m4 -g: { and } aren't supported in patsubst() or regexp()
When running in -g (GNU m4) emulation, patsubst() and regexp()
use the GNU m4 emacs-like regexes as implemented by gnulib,
which don't support {..} intervals.
When converting a GNU m4 regex to a POSIX ERE, escape raw { and }.
Autoconf relies on the GNU m4 regex behaviour.
See:
- https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Redefined-M4-Macros.html
- https://www.gnu.org/software/gnulib/manual/html_node/emacs-regular-expression-syntax.html
This fixes the tools/compat/configure regen.
PR toolchain/57431
diffstat:
usr.bin/m4/gnum4.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diffs (27 lines):
diff -r 309a798fb206 -r 1f96b22843b3 usr.bin/m4/gnum4.c
--- a/usr.bin/m4/gnum4.c Wed May 24 21:49:38 2023 +0000
+++ b/usr.bin/m4/gnum4.c Wed May 24 21:58:19 2023 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: gnum4.c,v 1.11 2021/12/07 20:24:07 rillig Exp $ */
+/* $NetBSD: gnum4.c,v 1.12 2023/05/24 21:58:19 lukem Exp $ */
/* $OpenBSD: gnum4.c,v 1.39 2008/08/21 21:01:04 espie Exp $ */
/*
@@ -33,7 +33,7 @@
#include "nbtool_config.h"
#endif
#include <sys/cdefs.h>
-__RCSID("$NetBSD: gnum4.c,v 1.11 2021/12/07 20:24:07 rillig Exp $");
+__RCSID("$NetBSD: gnum4.c,v 1.12 2023/05/24 21:58:19 lukem Exp $");
#include <sys/param.h>
#include <sys/types.h>
@@ -438,7 +438,7 @@ twiddle(const char *p)
p+=2;
continue;
}
- if (*p == '(' || *p == ')' || *p == '|')
+ if (*p == '(' || *p == ')' || *p == '|' || *p == '{' || *p == '}')
addchar('\\');
addchar(*p);
Home |
Main Index |
Thread Index |
Old Index