Re: bug#62267: grep-3.9 bug: \d matches multibyte digits

2023-03-19 Thread Jim Meyering
On Sun, Mar 19, 2023 at 4:12 PM Paul Eggert  wrote:
> On 2023-03-19 13:44, Jim Meyering wrote:
> > I've pushed your change along with the attached.
> > I'll probably create another snapshot today.
>
> Thanks. I also installed a minor dfa.c change in Gnulib yesterday to
> pacify Oracle Solaris Studio. No big deal since 'grep' builds OK anyway.
>
> I also ran into a weird issue with test-select on Fedora 37 x86-64. It
> appears to be timing dependent and usually doesn't happen. I can't
> reproduce under strace. This is another Gnulib thing and not relevant to
> grep (other than people might report test failures to bug-grep).
>
> I installed into Gnulib the attached patch which shouldn't hurt but
> which I don't know fixes the bug.

Oh! I must have missed getting the latter by bare minutes.
I've just published another snapshot (which does include the dfa.c change)
but not the select one. We'll get it for the release of 3.10



Re: bug#62267: grep-3.9 bug: \d matches multibyte digits

2023-03-19 Thread Paul Eggert

On 2023-03-19 13:44, Jim Meyering wrote:

I've pushed your change along with the attached.
I'll probably create another snapshot today.


Thanks. I also installed a minor dfa.c change in Gnulib yesterday to 
pacify Oracle Solaris Studio. No big deal since 'grep' builds OK anyway.


I also ran into a weird issue with test-select on Fedora 37 x86-64. It 
appears to be timing dependent and usually doesn't happen. I can't 
reproduce under strace. This is another Gnulib thing and not relevant to 
grep (other than people might report test failures to bug-grep).


I installed into Gnulib the attached patch which shouldn't hurt but 
which I don't know fixes the bug.diff --git a/ChangeLog b/ChangeLog
index dfce1a8df7..f42e2ede30 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2023-03-19  Paul Eggert  
+
+	test-pselect, test-select: use different ports
+	I have observed rare and hard-to-reproduce problems with the GNU
+	grep release candidate with ‘make -j5 check’ on Fedora 37 x86-64.
+	One possibility is that test-pselect and test-select interfere
+	with each other somehow when run simultaneously, as they use the
+	same port.  Work around this possibility by using different ports
+	from each other, and from test-poll (which also uses 12345).
+	Of course it’d be better if all these tests used system-assigned
+	ports, but I assume that’d take more work.
+	* tests/test-pselect.c, tests/test-select.c (TEST_PORT): New macro.
+	* tests/test-select.h (TEST_PORT): Remove.
+
 2023-03-19  Bruno Haible  
 
 	Update MODULES.html.sh.
diff --git a/tests/test-pselect.c b/tests/test-pselect.c
index 41468684c5..a383f1d1b2 100644
--- a/tests/test-pselect.c
+++ b/tests/test-pselect.c
@@ -24,6 +24,7 @@ SIGNATURE_CHECK (pselect, int,
  (int, fd_set *restrict, fd_set *restrict, fd_set *restrict,
   struct timespec const *restrict, const sigset_t *restrict));
 
+#define TEST_PORT 12347
 #include "test-select.h"
 
 static int
diff --git a/tests/test-select.c b/tests/test-select.c
index d04be58418..b460060351 100644
--- a/tests/test-select.c
+++ b/tests/test-select.c
@@ -25,6 +25,7 @@
 SIGNATURE_CHECK (select, int, (int, fd_set *, fd_set *, fd_set *,
struct timeval *));
 
+#define TEST_PORT 12346
 #include "test-select.h"
 
 int
diff --git a/tests/test-select.h b/tests/test-select.h
index afa996f40c..ceeb485471 100644
--- a/tests/test-select.h
+++ b/tests/test-select.h
@@ -37,8 +37,6 @@
 # include 
 #endif
 
-#define TEST_PORT   12345
-
 
 typedef int (*select_fn) (int, fd_set *, fd_set *, fd_set *, struct timeval *);