Santiago Vila <sanv...@debian.org> writes:

> Regarding hppa, some kind soul pushed the "retry" button, which made
> the package to be tried in another hppa machine and this time it worked:
>
> https://buildd.debian.org/status/fetch.php?pkg=m4&arch=hppa&ver=1.4.20-1&stamp=1756769519&raw=0
>
> So I'm not going to worry too much about hppa for now.

Sounds good.

> btw: I'm curious about the "two patches + one more to fix the first two".
> It is not the usual thing to squash patches before distributing them,
> particularly when one of them fixes things in the others?

On bug-gnu...@gnu.org we send the patches for the commits that we push
to the master branch.

Ideally I would have caught the mistake before pushing so I could have 1
patch per module (sys_stat-h and sys_types-h). But I realized when I was
replying to your bug report after pushing. Oops...

The correct single patch can be generated using this command in a Gnulib
checkout though:

    $ git diff 
8ba0c4da1ea978b770d1bbf8e306396ed556205f..d5dcc6c91d3c7c6f293fe906af885831af458dac

I expect that you do not have it cloned, so I have attached it for
you. Since m4 (atleast from git) puts Gnulib tests in tests/, I expect
you can trim the ChangeLog and .texi files and the patch will work.

Collin

diff --git a/ChangeLog b/ChangeLog
index d8950512db..67fb38e457 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2025-09-01  Collin Funk  <collin.fu...@gmail.com>
+
+	sys_types-h tests: Fix a static_assert failure on glibc/alpha.
+	* tests/test-sys_types-h.c [__GLIBC__ && __alpha]: Don't check that
+	blksize_t and blkcnt_t are signed.
+	* doc/posix-headers/sys_types.texi: Mention that these types are
+	unsigned on this platform.
+
+	sys_stat-h tests: Fix a static_assert failure on glibc/alpha.
+	Reported by Santiago Vila <sanv...@debian.org> in:
+	<https://lists.gnu.org/archive/html/bug-m4/2025-09/msg00000.html>.
+	* tests/test-sys_stat-h.c [__GLIBC__ && __alpha]: Don't check that
+	blksize_t and blkcnt_t are signed.
+	* doc/posix-headers/sys_stat.texi: Mention that these types are
+	unsigned on this platform.
+
 2025-09-01  Paul Eggert  <egg...@cs.ucla.edu>
 
 	tests: more fixes for AT_FDCWD portability
diff --git a/doc/posix-headers/sys_stat.texi b/doc/posix-headers/sys_stat.texi
index 764451255f..42040420d2 100644
--- a/doc/posix-headers/sys_stat.texi
+++ b/doc/posix-headers/sys_stat.texi
@@ -61,7 +61,8 @@ @node sys/stat.h
 @itemize
 @item
 On some platforms the types @code{blksize_t} and @code{blkcnt_t} are unsigned:
-Android.
+@c https://sourceware.org/PR33355
+Android, glibc/alpha.
 @item
 The macro @code{S_IFBLK} is missing on some platforms:
 MSVC 14.
diff --git a/doc/posix-headers/sys_types.texi b/doc/posix-headers/sys_types.texi
index ed301c4b2c..84d9bf7dea 100644
--- a/doc/posix-headers/sys_types.texi
+++ b/doc/posix-headers/sys_types.texi
@@ -44,7 +44,8 @@ @node sys/types.h
 @itemize
 @item
 On some platforms the types @code{blksize_t} and @code{blkcnt_t} are unsigned:
-Android.
+@c https://sourceware.org/PR33355
+Android, glibc/alpha.
 @item
 On some platforms the types @code{blksize_t} and @code{suseconds_t}
 are signed integer types that are wider than @code{long}:
diff --git a/tests/test-sys_stat-h.c b/tests/test-sys_stat-h.c
index 9c8ceb7c7c..6936cc7a8b 100644
--- a/tests/test-sys_stat-h.c
+++ b/tests/test-sys_stat-h.c
@@ -339,12 +339,14 @@ struct timespec st;
 static_assert (TYPE_SIGNED (off_t));
 
 /* POSIX requires that blksize_t is a signed integer type.  */
-#if !(defined __ANDROID__ || (defined __FreeBSD_kernel__ && !defined __FreeBSD__))
+#if !(defined __ANDROID__ \
+      || (defined __FreeBSD_kernel__ && !defined __FreeBSD__) \
+      || defined __GLIBC__ && defined __alpha)
 static_assert (TYPE_SIGNED (blksize_t));
 #endif
 
 /* POSIX requires that blkcnt_t is a signed integer type.  */
-#if !defined __ANDROID__
+#if !(defined __ANDROID__ || defined __GLIBC__ && defined __alpha)
 static_assert (TYPE_SIGNED (blkcnt_t));
 #endif
 
diff --git a/tests/test-sys_types-h.c b/tests/test-sys_types-h.c
index 2a64fb21cf..b3d6abeca0 100644
--- a/tests/test-sys_types-h.c
+++ b/tests/test-sys_types-h.c
@@ -46,12 +46,14 @@ static_assert (TYPE_SIGNED (off_t));
 static_assert (TYPE_SIGNED (off64_t));
 
 /* POSIX requires that blksize_t is a signed integer type.  */
-#if !(defined __ANDROID__ || (defined __FreeBSD_kernel__ && !defined __FreeBSD__))
+#if !(defined __ANDROID__ \
+      || (defined __FreeBSD_kernel__ && !defined __FreeBSD__) \
+      || defined __GLIBC__ && defined __alpha)
 static_assert (TYPE_SIGNED (blksize_t));
 #endif
 
 /* POSIX requires that blkcnt_t is a signed integer type.  */
-#if !defined __ANDROID__
+#if !(defined __ANDROID__ || defined __GLIBC__ && defined __alpha)
 static_assert (TYPE_SIGNED (blkcnt_t));
 #endif
 
  • m4 1.4.20 on a... Santiago Vila
    • Re: m4 1.... Collin Funk
      • Re: m... Santiago Vila
        • R... Collin Funk
          • ... Santiago Vila
        • R... Bruno Haible via Bug reports for the GNU m4 macro processor
      • Re: m... Bruno Haible via Bug reports for the GNU m4 macro processor
      • Re: m... Bruno Haible via Bug reports for the GNU m4 macro processor
        • R... Santiago Vila

Reply via email to