Re: bool and C23

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



To help move ahead on this, I propose the attached patches to Gnulib. They use a simpler version of the Autoconf macro, named gl_C_BOOL to avoid collision with any future improvements to Autoconf. My hope is that gl_C_BOOL can be renamed to AC_C_BOOL, or something like that. The idea is that AC_C_BOOL assumes C99 or later; if you want to port to pre-C99 (which pretty much nobody does these days), you can use the Gnulib stdbool module.

The first patch adds a Gnulib module c-bool, which acts like the existing Gnulib module stdbool except it supports C23-style bool (no include file) instead of C99-style bool.

The second patch is mostly mechanical: it changes the other Gnulib modules to prefer c-bool to stdbool.

I haven't installed these.
From e8d4bea2f7b864f8f09db65e797d7b6ddb6039c0 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@xxxxxxxxxxx>
Date: Thu, 8 Sep 2022 23:46:23 -0500
Subject: [PATCH 1/2] c-bool: new module

* tests/test-stdbool.c [TEST_C_BOOL]: Do not include stdbool.h.
* m4/c-bool.m4, modules/c-bool, modules/c-bool-tests:
* tests/test-c-bool.c: New files.
---
 ChangeLog            |  5 +++++
 MODULES.html.sh      |  1 +
 doc/gnulib.texi      | 34 ++++++++++++++++++++++++++++++++++
 m4/c-bool.m4         | 29 +++++++++++++++++++++++++++++
 modules/c-bool       | 18 ++++++++++++++++++
 modules/c-bool-tests | 11 +++++++++++
 tests/test-c-bool.c  |  2 ++
 tests/test-stdbool.c |  6 ++++--
 8 files changed, 104 insertions(+), 2 deletions(-)
 create mode 100644 m4/c-bool.m4
 create mode 100644 modules/c-bool
 create mode 100644 modules/c-bool-tests
 create mode 100644 tests/test-c-bool.c

diff --git a/ChangeLog b/ChangeLog
index 99b476be6e..80fb38c240 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2022-09-08  Paul Eggert  <eggert@xxxxxxxxxxx>
 
+	c-bool: new module
+	* tests/test-stdbool.c [TEST_C_BOOL]: Do not include stdbool.h.
+	* m4/c-bool.m4, modules/c-bool, modules/c-bool-tests:
+	* tests/test-c-bool.c: New files.
+
 	stdbool-tests: match stdbool
 	* tests/test-stdbool.c: Omit test for
 	__bool_true_false_are_defined since AC_CHECK_HEADER_STDBOOL no
diff --git a/MODULES.html.sh b/MODULES.html.sh
index d48912b13e..4f6af683e2 100755
--- a/MODULES.html.sh
+++ b/MODULES.html.sh
@@ -2383,6 +2383,7 @@ func_all_modules ()
   func_echo "$element"
 
   func_begin_table
+  func_module c-bool
   func_module stdckdint
   func_end_table
 
diff --git a/doc/gnulib.texi b/doc/gnulib.texi
index 0cc25f9e88..16ca2690d3 100644
--- a/doc/gnulib.texi
+++ b/doc/gnulib.texi
@@ -74,6 +74,7 @@ Documentation License''.
 * Extending Gnulib::
 * Miscellaneous Notes::
 * POSIX Substitutes Library::       Building as a separate substitutes library.
+* Keyword Substitutes::             Replacing language keywords.
 * Header File Substitutes::         Overriding system headers.
 * Function Substitutes::            Replacing system functions.
 * Legacy Function Substitutes::     Replacing system functions.
@@ -857,6 +858,39 @@ source code, or when the program uses a mix between C and C++ sources
 (requiring separate builds of the @code{posixlib} for the C compiler and
 for the C++ compiler).
 
+@node Keyword Substitutes
+@chapter ISO C Keyword Substitutes
+
+This chapter describes which keywords specified by ISO C are
+substituted by Gnulib.
+
+@menu
+* bool::
+@end menu
+
+@node bool
+@section @code{bool}
+
+Gnulib module: c-bool
+
+Portability problems fixed by Gnulib:
+@itemize
+@item
+The keywords @code{bool}, @code{true}, and @code{false} are not available:
+gcc 12 and other compilers predating C23.
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+On pre-C23 platforms, the keyword substitutes are macros.
+
+@item
+On pre-C23 platforms, the keyword substitutes assume C99 or later.
+If your code needs to be portable to pre-C99 platforms,
+it needs to also use the @code{stdbool} module.
+@end itemize
+
 @node Header File Substitutes
 @chapter ISO C and POSIX Header File Substitutes
 
diff --git a/m4/c-bool.m4 b/m4/c-bool.m4
new file mode 100644
index 0000000000..9c47f58de4
--- /dev/null
+++ b/m4/c-bool.m4
@@ -0,0 +1,29 @@
+# Check for bool that conforms to C2023.
+
+dnl Copyright 2022 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+AC_DEFUN([gl_C_BOOL],
+[
+  AC_CACHE_CHECK([for bool, true, false], [gl_cv_c_bool],
+    [AC_COMPILE_IFELSE(
+       [AC_LANG_DEFINES_PROVIDED[
+         #if true == false
+          #error "true == false"
+         #endif
+         extern bool b;
+         bool b = true == false;
+       ]],
+       [gl_cv_c_bool=yes],
+       [gl_cv_c_bool=no])])
+  if test "$gl_cv_c_bool" = yes; then
+    AC_DEFINE([HAVE_C_BOOL], [1],
+      [Define to 1 if bool, true and false work as per C2023.])
+  fi
+  AH_VERBATIM([bool],
+[#ifndef HAVE_C_BOOL
+ #include <stdbool.h>
+#endif])
+])
diff --git a/modules/c-bool b/modules/c-bool
new file mode 100644
index 0000000000..b5a52523d3
--- /dev/null
+++ b/modules/c-bool
@@ -0,0 +1,18 @@
+Description:
+A bool that is like C23.
+
+Files:
+m4/c-bool.m4
+
+configure.ac:
+gl_C_BOOL
+
+Makefile.am:
+
+Include:
+
+License:
+LGPLv2+
+
+Maintainer:
+all
diff --git a/modules/c-bool-tests b/modules/c-bool-tests
new file mode 100644
index 0000000000..671b6afb93
--- /dev/null
+++ b/modules/c-bool-tests
@@ -0,0 +1,11 @@
+Files:
+tests/test-c-bool.c
+tests/test-stdbool.c
+
+Depends-on:
+
+configure.ac:
+
+Makefile.am:
+TESTS += test-c-bool
+check_PROGRAMS += test-c-bool
diff --git a/tests/test-c-bool.c b/tests/test-c-bool.c
new file mode 100644
index 0000000000..df9436e4b6
--- /dev/null
+++ b/tests/test-c-bool.c
@@ -0,0 +1,2 @@
+#define TEST_C_BOOL
+#include "test-stdbool.c"
diff --git a/tests/test-stdbool.c b/tests/test-stdbool.c
index 329f5d5378..98588329f3 100644
--- a/tests/test-stdbool.c
+++ b/tests/test-stdbool.c
@@ -1,4 +1,4 @@
-/* Test of <stdbool.h> substitute.
+/* Test bool.
    Copyright (C) 2002-2007, 2009-2022 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
@@ -33,7 +33,9 @@
 
 #include <config.h>
 
-#include <stdbool.h>
+#ifndef TEST_C_BOOL
+# include <stdbool.h>
+#endif
 
 #if false
  "error: false is not 0"
-- 
2.37.2

From 81378dd349a8eba29e9f235879a73ee1792622ad Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@xxxxxxxxxxx>
Date: Thu, 8 Sep 2022 23:48:18 -0500
Subject: [PATCH 2/2] Prefer c-bool to stdbool
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Prefer the C23 style to the C99 style, and use c-bool
instead of stdbool when that is easy.
* lib/acl-internal.h, lib/acl.h, lib/argmatch.c, lib/argmatch.h:
* lib/argp-help.c, lib/argv-iter.h, lib/asyncsafe-spin.c:
* lib/backup-internal.h, lib/backupfile.c, lib/base32.h:
* lib/base64.h, lib/basename-lgpl.c, lib/bitset/base.h:
* lib/c-ctype.h, lib/c-strcasestr.c, lib/canonicalize-lgpl.c:
* lib/canonicalize.c, lib/chdir-long.c, lib/chown.c:
* lib/classpath.h, lib/clean-temp-private.h:
* lib/clean-temp-simple.c, lib/clean-temp-simple.h:
* lib/clean-temp.c, lib/clean-temp.h, lib/cloexec.h:
* lib/close-stream.c, lib/closein.c, lib/closeout.c, lib/closeout.h:
* lib/csharpcomp.h, lib/csharpexec.h, lib/cycle-check.c:
* lib/cycle-check.h, lib/des.h, lib/dfa.h, lib/diffseq.h:
* lib/dirname.h, lib/exclude.c, lib/exclude.h, lib/execute.c:
* lib/execute.h, lib/execvpe.c, lib/fatal-signal.c, lib/fchdir.c:
* lib/file-set.h, lib/filevercmp.c, lib/findprog-in.c:
* lib/findprog.c, lib/findprog.h, lib/fma.c, lib/fnmatch.c:
* lib/fopen.c, lib/freadable.h, lib/freading.h, lib/freopen-safer.c:
* lib/fstrcmp.c, lib/fsusage.h, lib/fts.c, lib/fwritable.h:
* lib/fwriteerror.c, lib/fwriting.h, lib/gen-uni-tables.c:
* lib/getaddrinfo.c, lib/getcwd.c, lib/getloadavg.c:
* lib/getndelim2.c, lib/getpass.c, lib/getrandom.c:
* lib/git-merge-changelog.c, lib/gl_list.h, lib/gl_map.h:
* lib/gl_omap.h, lib/gl_oset.h, lib/gl_set.h, lib/glob.c:
* lib/glthread/cond.h, lib/hamt.h, lib/hard-locale.h:
* lib/hash-triple.h, lib/hash.h, lib/human.h, lib/i-ring.h:
* lib/isapipe.c, lib/javacomp.h, lib/javaexec.h, lib/javaversion.c:
* lib/lchown.c, lib/localeinfo.h, lib/localename.c:
* lib/long-options.h, lib/malloc/dynarray.h, lib/mbchar.h:
* lib/mbfile.h, lib/mbiter.h, lib/mbmemcasecoll.h, lib/mbscasestr.c:
* lib/mbsstr.c, lib/mbuiter.h, lib/mkdir-p.h, lib/modechange.h:
* lib/mountlist.h, lib/nanosleep.c, lib/nonblocking.h:
* lib/nstrftime.c, lib/openat.c, lib/openat.h, lib/os2-spawn.c:
* lib/parse-datetime.h, lib/pipe-filter-aux.c, lib/pipe-filter-gi.c:
* lib/pipe-filter-ii.c, lib/pipe-filter.h, lib/posixtm.h:
* lib/priv-set.c, lib/progreloc.c, lib/propername.c:
* lib/pthread-spin.c, lib/quotearg.c, lib/readtokens.c:
* lib/readtokens0.h, lib/readutmp.c, lib/regex-quote.h:
* lib/regex_internal.h, lib/relocwrapper.c, lib/rename.c:
* lib/renameatu.c, lib/rpmatch.c, lib/same.c, lib/same.h:
* lib/save-cwd.c, lib/savewd.c, lib/savewd.h, lib/spawn-pipe.h:
* lib/spawni.c, lib/stack.h, lib/stat.c, lib/stdckdint.in.h:
* lib/strcasestr.c, lib/strfmon_l.c, lib/striconveh.c:
* lib/striconveha.h, lib/string-buffer.h, lib/strptime.c:
* lib/strstr.c, lib/strtod.c, lib/supersede.h, lib/system-quote.c:
* lib/tempname.c, lib/term-style-control.c:
* lib/term-style-control.h, lib/textstyle.in.h, lib/time_rz.c:
* lib/tmpdir.c, lib/tmpdir.h, lib/tmpfile.c, lib/unicase.in.h:
* lib/unicase/caseprop.h, lib/unicase/invariant.h:
* lib/unicase/u16-casemap.c, lib/unicase/u16-ct-totitle.c:
* lib/unicase/u16-is-invariant.c, lib/unicase/u32-casemap.c:
* lib/unicase/u32-ct-totitle.c, lib/unicase/u32-is-invariant.c:
* lib/unicase/u8-casemap.c, lib/unicase/u8-ct-totitle.c:
* lib/unicase/u8-is-invariant.c, lib/unictype.in.h:
* lib/unigbrk.in.h, lib/unigbrk/u16-grapheme-breaks.c:
* lib/unigbrk/u32-grapheme-breaks.c:
* lib/unigbrk/u8-grapheme-breaks.c:
* lib/unigbrk/uc-grapheme-breaks.c, lib/uniname/uniname.c:
* lib/unistr.in.h, lib/unlinkdir.h, lib/userspec.h, lib/utime.c:
* lib/utimecmp.c, lib/utimens.c, lib/wait-process.h:
* lib/windows-cond.c, lib/windows-spawn.c, lib/windows-spawn.h:
* lib/windows-timedrwlock.c, lib/write-any-file.h, lib/xbinary-io.c:
* lib/xstrtod.h, lib/yesno.h:
* tests/nap.h, tests/qemu.h, tests/test-areadlink-with-size.c:
* tests/test-areadlink.c, tests/test-areadlinkat-with-size.c:
* tests/test-areadlinkat.c, tests/test-base32.c:
* tests/test-base64.c, tests/test-ceil2.c, tests/test-ceilf2.c:
* tests/test-chown.c, tests/test-dirname.c, tests/test-dup-safer.c:
* tests/test-dup3.c, tests/test-exclude.c:
* tests/test-execute-child.c, tests/test-execute-main.c:
* tests/test-execute-script.c, tests/test-explicit_bzero.c:
* tests/test-fchownat.c, tests/test-fcntl-safer.c:
* tests/test-fcntl.c, tests/test-fdutimensat.c:
* tests/test-filenamecat.c, tests/test-floor2.c:
* tests/test-floorf2.c, tests/test-fstatat.c, tests/test-fstrcmp.c:
* tests/test-futimens.c, tests/test-getlogin.h, tests/test-getopt.h:
* tests/test-hard-locale.c, tests/test-hash.c:
* tests/test-idpriv-drop.c, tests/test-idpriv-droptemp.c:
* tests/test-immutable.c, tests/test-intprops.c:
* tests/test-lchown.c, tests/test-link.c, tests/test-linkat.c:
* tests/test-lstat.c, tests/test-mbmemcasecmp.c:
* tests/test-mbmemcasecoll.c, tests/test-mkdir.c:
* tests/test-mkdirat.c, tests/test-mkfifo.c, tests/test-mkfifoat.c:
* tests/test-mknod.c, tests/test-nonblocking-pipe-child.c:
* tests/test-nonblocking-pipe-main.c:
* tests/test-nonblocking-socket-child.c:
* tests/test-nonblocking-socket-main.c, tests/test-open.c:
* tests/test-openat.c, tests/test-pipe.c, tests/test-pipe2.c:
* tests/test-poll.c, tests/test-posix_spawn-chdir.c:
* tests/test-posix_spawn-dup2-stdin.c:
* tests/test-posix_spawn-dup2-stdout.c:
* tests/test-posix_spawn-fchdir.c, tests/test-posix_spawn-open1.c:
* tests/test-posix_spawn-open2.c, tests/test-quotearg-simple.c:
* tests/test-quotearg.c, tests/test-readlink.c:
* tests/test-readlinkat.c, tests/test-readtokens.c:
* tests/test-rename.c, tests/test-renameat.c:
* tests/test-renameatu.c, tests/test-rmdir.c, tests/test-round2.c:
* tests/test-select.h, tests/test-spawn-pipe-child.c:
* tests/test-spawn-pipe-main.c, tests/test-spawn-pipe-script.c:
* tests/test-stack.c, tests/test-stat.c, tests/test-supersede.c:
* tests/test-symlink.c, tests/test-symlinkat.c:
* tests/test-system-quote-main.c:
* tests/test-term-style-control-hello.c:
* tests/test-term-style-control-yes.c, tests/test-timespec.c:
* tests/test-trunc2.c, tests/test-truncf2.c, tests/test-unlink.c:
* tests/test-unlinkat.c, tests/test-userspec.c, tests/test-utime.c:
* tests/test-utimens.c, tests/test-utimensat.c:
* tests/unictype/test-categ_byname.c:
* tests/unigbrk/test-uc-is-grapheme-break.c:
Don’t include stdbool.h.
* modules/acl-permissions, modules/areadlink-tests:
* modules/areadlink-with-size-tests, modules/areadlinkat-tests:
* modules/areadlinkat-with-size-tests, modules/argmatch:
* modules/argv-iter, modules/asyncsafe-spin:
* modules/backup-rename, modules/backupfile, modules/base32:
* modules/base64, modules/basename-lgpl:
* modules/c-ctype, modules/c-strcasestr, modules/canonicalize:
* modules/canonicalize-lgpl, modules/ceil-tests:
* modules/ceilf-tests, modules/chdir-long, modules/chown:
* modules/chown-tests, modules/classpath, modules/clean-temp:
* modules/clean-temp-simple, modules/cloexec, modules/close-stream:
* modules/closein, modules/closeout, modules/cond:
* modules/crypto/des, modules/csharpcomp, modules/csharpexec:
* modules/cycle-check, modules/dfa:
* modules/dirname-lgpl, modules/dprintf-posix-tests:
* modules/dynarray, modules/exclude, modules/execute:
* modules/execute-tests, modules/execvpe, modules/fatal-signal:
* modules/fchdir, modules/fcntl-safer-tests, modules/fcntl-tests:
* modules/file-set, modules/filenamecat-tests:
* modules/filevercmp, modules/findprog, modules/findprog-in:
* modules/findprog-lgpl, modules/floor-tests, modules/floorf-tests:
* modules/fma, modules/fmaf, modules/fmal, modules/fnmatch:
* modules/fopen, modules/fopen-gnu, modules/fprintf-posix-tests:
* modules/freadable, modules/freading, modules/freopen-safer:
* modules/fstrcmp-tests, modules/fsusage, modules/fts:
* modules/fwritable, modules/fwriteerror, modules/fwriting:
* modules/get-rusage-as-tests:
* modules/get-rusage-data-tests, modules/getaddrinfo:
* modules/getcwd, modules/getcwd-tests, modules/getloadavg:
* modules/getlogin-tests, modules/getlogin_r-tests:
* modules/getndelim2, modules/getopt-gnu-tests:
* modules/getopt-posix-tests, modules/getpass:
* modules/git-merge-changelog, modules/glob, modules/hamt:
* modules/hard-locale, modules/hash, modules/hash-tests:
* modules/human, modules/i-ring:
* modules/idpriv-drop-tests, modules/idpriv-droptemp-tests:
* modules/immutable-tests, modules/intprops-tests, modules/isapipe:
* modules/javacomp, modules/javaexec, modules/javaversion:
* modules/lchown, modules/lchown-tests:
* modules/libtextstyle-optional, modules/link-tests, modules/list:
* modules/localename, modules/long-options, modules/lstat-tests:
* modules/map, modules/mbchar, modules/mbfile, modules/mbiter:
* modules/mbmemcasecmp-tests, modules/mbmemcasecoll:
* modules/mbmemcasecoll-tests, modules/mbscasestr, modules/mbsstr:
* modules/mbuiter, modules/mkdir-p, modules/mkdir-tests:
* modules/mkfifo-tests, modules/mknod-tests, modules/modechange:
* modules/mountlist, modules/nanosleep, modules/nonblocking:
* modules/nonblocking-pipe-tests, modules/nonblocking-socket-tests:
* modules/nstrftime, modules/omap, modules/open-tests:
* modules/openat, modules/openat-h, modules/oset:
* modules/parse-datetime, modules/pipe-filter-gi:
* modules/pipe-filter-ii, modules/pipe-posix-tests:
* modules/pipe2-tests, modules/poll-tests:
* modules/posix_spawn-tests:
* modules/posix_spawn_file_actions_addfchdir-tests:
* modules/posix_spawnp-tests, modules/posixtm, modules/priv-set:
* modules/propername, modules/pselect-tests, modules/pthread-spin:
* modules/quotearg, modules/readlink-tests, modules/readtokens:
* modules/readtokens0, modules/readutmp, modules/regex:
* modules/regex-quote, modules/relocatable-prog:
* modules/rename:
* modules/rename-tests, modules/renameatu, modules/rmdir-tests:
* modules/round-tests, modules/roundf-tests, modules/rpmatch:
* modules/same, modules/save-cwd, modules/savewd:
* modules/select-tests, modules/set:
* modules/spawn-pipe, modules/spawn-pipe-tests, modules/stack:
* modules/stat, modules/stat-tests, modules/stdckdint:
* modules/stdckdint-tests:
* modules/strcasestr-simple, modules/strfmon_l, modules/striconveh:
* modules/striconveha, modules/string-buffer, modules/strptime:
* modules/strstr-simple, modules/strtod, modules/strtold:
* modules/symlink-tests:
* modules/system-quote-tests, modules/tempname:
* modules/term-style-control, modules/term-style-control-tests:
* modules/time_rz, modules/timespec-tests, modules/tmpdir:
* modules/tmpfile, modules/trunc-tests, modules/truncf-tests:
* modules/unicase/base, modules/unicase/cased:
* modules/unicase/ignorable, modules/unicase/u16-casemap:
* modules/unicase/u16-ct-totitle, modules/unicase/u16-is-invariant:
* modules/unicase/u32-casemap, modules/unicase/u32-ct-totitle:
* modules/unicase/u32-is-invariant, modules/unicase/u8-casemap:
* modules/unicase/u8-ct-totitle, modules/unicase/u8-is-invariant:
* modules/unictype/base:
* modules/unictype/category-byname-tests, modules/unigbrk/base:
* modules/unigbrk/u16-grapheme-breaks:
* modules/unigbrk/u32-grapheme-breaks:
* modules/unigbrk/u8-grapheme-breaks:
* modules/unigbrk/uc-grapheme-breaks:
* modules/unigbrk/uc-is-grapheme-break-tests:
* modules/unistd-safer-tests:
* modules/unistr/base, modules/unistr/u16-strstr:
* modules/unistr/u32-strstr, modules/unlink-tests:
* modules/unlinkdir, modules/userspec:
* modules/utimecmp, modules/utimens, modules/wait-process:
* modules/windows-cond, modules/windows-spawn:
* modules/write-any-file:
* modules/xbinary-io, modules/xlist, modules/xmap:
* modules/xomap, modules/xoset, modules/xset, modules/xstrtod:
* modules/xstrtold, modules/yesno:
Depend on c-bool, not stdbool.
* modules/acl, modules/xgetcwd:
Don’t depend on stdbool.
* modules/argp, modules/bitset, modules/diffseq, modules/file-has-acl:
* modules/gen-uni-tables, modules/getrandom:
* modules/hash-triple-simple, modules/posix_spawn-internal:
* modules/relocatable-prog-wrapper, modules/scratch_buffer:
* modules/strcasestr, modules/supersede, modules/system-quote:
* modules/uniconv/base, modules/uniname/uniname, modules/utime:
* modules/windows-timedrwlock:
Depend on c-bool.
---
 ChangeLog                                     | 223 ++++++++++++++++++
 doc/gnulib-intro.texi                         |   2 +-
 doc/gnulib-readme.texi                        |  11 +-
 doc/gnulib.texi                               |   2 +-
 doc/intprops.texi                             |   3 +-
 doc/posix-headers/stdbool.texi                |   2 +
 lib/acl-internal.h                            |   1 -
 lib/acl.h                                     |   1 -
 lib/argmatch.c                                |   1 -
 lib/argmatch.h                                |   1 -
 lib/argp-help.c                               |   1 -
 lib/argv-iter.h                               |   1 -
 lib/asyncsafe-spin.c                          |   2 -
 lib/backup-internal.h                         |   1 -
 lib/backupfile.c                              |   1 -
 lib/base32.h                                  |   3 -
 lib/base64.h                                  |   3 -
 lib/basename-lgpl.c                           |   1 -
 lib/bitset/base.h                             |   1 -
 lib/c-ctype.h                                 |   2 -
 lib/c-strcasestr.c                            |   1 -
 lib/canonicalize-lgpl.c                       |   1 -
 lib/canonicalize.c                            |   1 -
 lib/chdir-long.c                              |   1 -
 lib/chown.c                                   |   1 -
 lib/classpath.h                               |   2 -
 lib/clean-temp-private.h                      |   1 -
 lib/clean-temp-simple.c                       |   1 -
 lib/clean-temp-simple.h                       |   2 -
 lib/clean-temp.c                              |   1 -
 lib/clean-temp.h                              |   1 -
 lib/cloexec.h                                 |   2 -
 lib/close-stream.c                            |   1 -
 lib/closein.c                                 |   1 -
 lib/closeout.c                                |   1 -
 lib/closeout.h                                |   2 -
 lib/csharpcomp.h                              |   2 -
 lib/csharpexec.h                              |   2 -
 lib/cycle-check.c                             |   1 -
 lib/cycle-check.h                             |   1 -
 lib/des.h                                     |   1 -
 lib/dfa.h                                     |   1 -
 lib/diffseq.h                                 |   1 -
 lib/dirname.h                                 |   1 -
 lib/exclude.c                                 |   2 -
 lib/exclude.h                                 |   1 -
 lib/execute.c                                 |   1 -
 lib/execute.h                                 |   2 -
 lib/execvpe.c                                 |   1 -
 lib/fatal-signal.c                            |   1 -
 lib/fchdir.c                                  |   1 -
 lib/file-set.h                                |   1 -
 lib/filevercmp.c                              |   1 -
 lib/findprog-in.c                             |   1 -
 lib/findprog.c                                |   1 -
 lib/findprog.h                                |   2 -
 lib/fma.c                                     |   1 -
 lib/fnmatch.c                                 |   1 -
 lib/fopen.c                                   |   1 -
 lib/freadable.h                               |   1 -
 lib/freading.h                                |   1 -
 lib/freopen-safer.c                           |   1 -
 lib/fstrcmp.c                                 |   1 -
 lib/fsusage.h                                 |   1 -
 lib/fts.c                                     |   1 -
 lib/fwritable.h                               |   1 -
 lib/fwriteerror.c                             |   1 -
 lib/fwriting.h                                |   1 -
 lib/gen-uni-tables.c                          |   1 -
 lib/getaddrinfo.c                             |   2 -
 lib/getcwd.c                                  |   1 -
 lib/getloadavg.c                              |   1 -
 lib/getndelim2.c                              |   1 -
 lib/getpass.c                                 |   2 -
 lib/getrandom.c                               |   1 -
 lib/git-merge-changelog.c                     |   1 -
 lib/gl_list.h                                 |   1 -
 lib/gl_map.h                                  |   1 -
 lib/gl_omap.h                                 |   1 -
 lib/gl_oset.h                                 |   1 -
 lib/gl_set.h                                  |   1 -
 lib/glob.c                                    |   1 -
 lib/glthread/cond.h                           |   1 -
 lib/hamt.h                                    |   1 -
 lib/hard-locale.h                             |   2 -
 lib/hash-triple.h                             |   1 -
 lib/hash.h                                    |   1 -
 lib/human.h                                   |   1 -
 lib/i-ring.h                                  |   1 -
 lib/isapipe.c                                 |   1 -
 lib/javacomp.h                                |   2 -
 lib/javaexec.h                                |   2 -
 lib/javaversion.c                             |   1 -
 lib/lchown.c                                  |   1 -
 lib/localeinfo.h                              |   1 -
 lib/localename.c                              |   1 -
 lib/long-options.h                            |   2 -
 lib/malloc/dynarray.h                         |   1 -
 lib/mbchar.h                                  |   1 -
 lib/mbfile.h                                  |   1 -
 lib/mbiter.h                                  |   1 -
 lib/mbmemcasecoll.h                           |   1 -
 lib/mbscasestr.c                              |   1 -
 lib/mbsstr.c                                  |   1 -
 lib/mbuiter.h                                 |   1 -
 lib/mkdir-p.h                                 |   1 -
 lib/modechange.h                              |   1 -
 lib/mountlist.h                               |   1 -
 lib/nanosleep.c                               |   1 -
 lib/nonblocking.h                             |   2 -
 lib/nstrftime.c                               |   1 -
 lib/openat.c                                  |   1 -
 lib/openat.h                                  |   1 -
 lib/os2-spawn.c                               |   1 -
 lib/parse-datetime.h                          |   1 -
 lib/pipe-filter-aux.c                         |   1 -
 lib/pipe-filter-gi.c                          |   1 -
 lib/pipe-filter-ii.c                          |   1 -
 lib/pipe-filter.h                             |   2 -
 lib/posixtm.h                                 |   1 -
 lib/priv-set.c                                |   1 -
 lib/progreloc.c                               |   1 -
 lib/propername.c                              |   1 -
 lib/pthread-spin.c                            |   2 -
 lib/quotearg.c                                |   1 -
 lib/readtokens.c                              |   1 -
 lib/readtokens0.h                             |   1 -
 lib/readutmp.c                                |   1 -
 lib/regex-quote.h                             |   2 -
 lib/regex_internal.h                          |   1 -
 lib/relocwrapper.c                            |   2 +-
 lib/rename.c                                  |   1 -
 lib/renameatu.c                               |   1 -
 lib/rpmatch.c                                 |   1 -
 lib/same.c                                    |   1 -
 lib/same.h                                    |   2 -
 lib/save-cwd.c                                |   1 -
 lib/savewd.c                                  |   1 -
 lib/savewd.h                                  |   1 -
 lib/spawn-pipe.h                              |   2 -
 lib/spawni.c                                  |   1 -
 lib/stack.h                                   |   1 -
 lib/stat.c                                    |   1 -
 lib/stdckdint.in.h                            |   2 -
 lib/strcasestr.c                              |   1 -
 lib/strfmon_l.c                               |   1 -
 lib/striconveh.c                              |   1 -
 lib/striconveha.h                             |   1 -
 lib/string-buffer.h                           |   1 -
 lib/strptime.c                                |   2 +-
 lib/strstr.c                                  |   2 -
 lib/strtod.c                                  |   1 -
 lib/supersede.h                               |   1 -
 lib/system-quote.c                            |   1 -
 lib/tempname.c                                |   1 -
 lib/term-style-control.c                      |   1 -
 lib/term-style-control.h                      |   2 -
 lib/textstyle.in.h                            |   1 -
 lib/time_rz.c                                 |   1 -
 lib/tmpdir.c                                  |   1 -
 lib/tmpdir.h                                  |   1 -
 lib/tmpfile.c                                 |   1 -
 lib/unicase.in.h                              |   3 -
 lib/unicase/caseprop.h                        |   1 -
 lib/unicase/invariant.h                       |   1 -
 lib/unicase/u16-casemap.c                     |   1 -
 lib/unicase/u16-ct-totitle.c                  |   1 -
 lib/unicase/u16-is-invariant.c                |   1 -
 lib/unicase/u32-casemap.c                     |   1 -
 lib/unicase/u32-ct-totitle.c                  |   1 -
 lib/unicase/u32-is-invariant.c                |   1 -
 lib/unicase/u8-casemap.c                      |   1 -
 lib/unicase/u8-ct-totitle.c                   |   1 -
 lib/unicase/u8-is-invariant.c                 |   1 -
 lib/unictype.in.h                             |   3 -
 lib/unigbrk.in.h                              |   3 -
 lib/unigbrk/u16-grapheme-breaks.c             |   1 -
 lib/unigbrk/u32-grapheme-breaks.c             |   1 -
 lib/unigbrk/u8-grapheme-breaks.c              |   1 -
 lib/unigbrk/uc-grapheme-breaks.c              |   1 -
 lib/uniname/uniname.c                         |   1 -
 lib/unistr.in.h                               |   3 -
 lib/unlinkdir.h                               |   2 -
 lib/userspec.h                                |   1 -
 lib/utime.c                                   |   1 -
 lib/utimecmp.c                                |   1 -
 lib/utimens.c                                 |   1 -
 lib/wait-process.h                            |   2 -
 lib/windows-cond.c                            |   1 -
 lib/windows-spawn.c                           |   1 -
 lib/windows-spawn.h                           |   1 -
 lib/windows-timedrwlock.c                     |   1 -
 lib/write-any-file.h                          |   2 -
 lib/xbinary-io.c                              |   1 -
 lib/xstrtod.h                                 |   2 -
 lib/yesno.h                                   |   2 -
 modules/acl                                   |   1 -
 modules/acl-permissions                       |   2 +-
 modules/areadlink-tests                       |   2 +-
 modules/areadlink-with-size-tests             |   2 +-
 modules/areadlinkat-tests                     |   2 +-
 modules/areadlinkat-with-size-tests           |   2 +-
 modules/argmatch                              |   2 +-
 modules/argp                                  |   1 +
 modules/argv-iter                             |   2 +-
 modules/asyncsafe-spin                        |   2 +-
 modules/backup-rename                         |   2 +-
 modules/backupfile                            |   2 +-
 modules/base32                                |   2 +-
 modules/base64                                |   2 +-
 modules/basename-lgpl                         |   2 +-
 modules/bitset                                |   1 +
 modules/c-ctype                               |   2 +-
 modules/c-strcasestr                          |   2 +-
 modules/canonicalize                          |   2 +-
 modules/canonicalize-lgpl                     |   2 +-
 modules/ceil-tests                            |   2 +-
 modules/ceilf-tests                           |   2 +-
 modules/chdir-long                            |   2 +-
 modules/chown                                 |   2 +-
 modules/chown-tests                           |   2 +-
 modules/classpath                             |   2 +-
 modules/clean-temp                            |   2 +-
 modules/clean-temp-simple                     |   2 +-
 modules/cloexec                               |   2 +-
 modules/close-stream                          |   2 +-
 modules/closein                               |   2 +-
 modules/closeout                              |   2 +-
 modules/cond                                  |   2 +-
 modules/crypto/des                            |   2 +-
 modules/csharpcomp                            |   2 +-
 modules/csharpexec                            |   2 +-
 modules/cycle-check                           |   2 +-
 modules/dfa                                   |   2 +-
 modules/diffseq                               |   1 +
 modules/dirname-lgpl                          |   2 +-
 modules/dprintf-posix-tests                   |   2 +-
 modules/dynarray                              |   2 +-
 modules/exclude                               |   2 +-
 modules/execute                               |   2 +-
 modules/execute-tests                         |   2 +-
 modules/execvpe                               |   2 +-
 modules/fatal-signal                          |   2 +-
 modules/fchdir                                |   2 +-
 modules/fcntl-safer-tests                     |   2 +-
 modules/fcntl-tests                           |   2 +-
 modules/file-has-acl                          |   1 +
 modules/file-set                              |   2 +-
 modules/filenamecat-tests                     |   2 +-
 modules/filevercmp                            |   2 +-
 modules/findprog                              |   2 +-
 modules/findprog-in                           |   2 +-
 modules/findprog-lgpl                         |   2 +-
 modules/floor-tests                           |   2 +-
 modules/floorf-tests                          |   2 +-
 modules/fma                                   |   2 +-
 modules/fmaf                                  |   2 +-
 modules/fmal                                  |   2 +-
 modules/fnmatch                               |   2 +-
 modules/fopen                                 |   2 +-
 modules/fopen-gnu                             |   2 +-
 modules/fprintf-posix-tests                   |   2 +-
 modules/freadable                             |   2 +-
 modules/freading                              |   2 +-
 modules/freopen-safer                         |   2 +-
 modules/fstrcmp-tests                         |   2 +-
 modules/fsusage                               |   2 +-
 modules/fts                                   |   2 +-
 modules/fwritable                             |   2 +-
 modules/fwriteerror                           |   2 +-
 modules/fwriting                              |   3 +-
 modules/gen-uni-tables                        |   1 +
 modules/get-rusage-as-tests                   |   2 +-
 modules/get-rusage-data-tests                 |   2 +-
 modules/getaddrinfo                           |   2 +-
 modules/getcwd                                |   2 +-
 modules/getcwd-tests                          |   2 +-
 modules/getloadavg                            |   2 +-
 modules/getlogin-tests                        |   2 +-
 modules/getlogin_r-tests                      |   2 +-
 modules/getndelim2                            |   2 +-
 modules/getopt-gnu-tests                      |   2 +-
 modules/getopt-posix-tests                    |   2 +-
 modules/getpass                               |   2 +-
 modules/getrandom                             |   1 +
 modules/git-merge-changelog                   |   2 +-
 modules/glob                                  |   2 +-
 modules/hamt                                  |   2 +-
 modules/hard-locale                           |   2 +-
 modules/hash                                  |   2 +-
 modules/hash-tests                            |   2 +-
 modules/hash-triple-simple                    |   1 +
 modules/human                                 |   2 +-
 modules/i-ring                                |   2 +-
 modules/idpriv-drop-tests                     |   2 +-
 modules/idpriv-droptemp-tests                 |   2 +-
 modules/immutable-tests                       |   2 +-
 modules/intprops-tests                        |   2 +-
 modules/isapipe                               |   2 +-
 modules/javacomp                              |   2 +-
 modules/javaexec                              |   2 +-
 modules/javaversion                           |   2 +-
 modules/lchown                                |   2 +-
 modules/lchown-tests                          |   2 +-
 modules/libtextstyle-optional                 |   2 +-
 modules/link-tests                            |   2 +-
 modules/list                                  |   2 +-
 modules/localename                            |   2 +-
 modules/long-options                          |   2 +-
 modules/lstat-tests                           |   2 +-
 modules/map                                   |   2 +-
 modules/mbchar                                |   2 +-
 modules/mbfile                                |   2 +-
 modules/mbiter                                |   2 +-
 modules/mbmemcasecmp-tests                    |   2 +-
 modules/mbmemcasecoll                         |   2 +-
 modules/mbmemcasecoll-tests                   |   2 +-
 modules/mbscasestr                            |   2 +-
 modules/mbsstr                                |   2 +-
 modules/mbuiter                               |   2 +-
 modules/mkdir-p                               |   2 +-
 modules/mkdir-tests                           |   2 +-
 modules/mkfifo-tests                          |   2 +-
 modules/mknod-tests                           |   2 +-
 modules/modechange                            |   2 +-
 modules/mountlist                             |   2 +-
 modules/nanosleep                             |   2 +-
 modules/nonblocking                           |   2 +-
 modules/nonblocking-pipe-tests                |   2 +-
 modules/nonblocking-socket-tests              |   2 +-
 modules/nstrftime                             |   2 +-
 modules/omap                                  |   2 +-
 modules/open-tests                            |   2 +-
 modules/openat                                |   2 +-
 modules/openat-h                              |   2 +-
 modules/oset                                  |   2 +-
 modules/parse-datetime                        |   2 +-
 modules/pipe-filter-gi                        |   2 +-
 modules/pipe-filter-ii                        |   2 +-
 modules/pipe-posix-tests                      |   2 +-
 modules/pipe2-tests                           |   2 +-
 modules/poll-tests                            |   2 +-
 modules/posix_spawn-internal                  |   1 +
 modules/posix_spawn-tests                     |   2 +-
 .../posix_spawn_file_actions_addfchdir-tests  |   2 +-
 modules/posix_spawnp-tests                    |   2 +-
 modules/posixtm                               |   2 +-
 modules/priv-set                              |   2 +-
 modules/propername                            |   2 +-
 modules/pselect-tests                         |   2 +-
 modules/pthread-spin                          |   2 +-
 modules/quotearg                              |   2 +-
 modules/readlink-tests                        |   2 +-
 modules/readtokens                            |   2 +-
 modules/readtokens0                           |   2 +-
 modules/readutmp                              |   2 +-
 modules/regex                                 |   2 +-
 modules/regex-quote                           |   2 +-
 modules/relocatable-prog                      |   2 +-
 modules/relocatable-prog-wrapper              |   1 +
 modules/rename                                |   2 +-
 modules/rename-tests                          |   2 +-
 modules/renameatu                             |   2 +-
 modules/rmdir-tests                           |   2 +-
 modules/round-tests                           |   2 +-
 modules/roundf-tests                          |   2 +-
 modules/rpmatch                               |   3 +-
 modules/same                                  |   2 +-
 modules/save-cwd                              |   2 +-
 modules/savewd                                |   2 +-
 modules/scratch_buffer                        |   1 +
 modules/select-tests                          |   2 +-
 modules/set                                   |   2 +-
 modules/spawn-pipe                            |   2 +-
 modules/spawn-pipe-tests                      |   2 +-
 modules/stack                                 |   2 +-
 modules/stat                                  |   2 +-
 modules/stat-tests                            |   2 +-
 modules/stdckdint                             |   2 +-
 modules/stdckdint-tests                       |   2 +-
 modules/strcasestr                            |   1 +
 modules/strcasestr-simple                     |   2 +-
 modules/strfmon_l                             |   2 +-
 modules/striconveh                            |   2 +-
 modules/striconveha                           |   2 +-
 modules/string-buffer                         |   2 +-
 modules/strptime                              |   2 +-
 modules/strstr-simple                         |   2 +-
 modules/strtod                                |   2 +-
 modules/strtold                               |   2 +-
 modules/supersede                             |   1 +
 modules/symlink-tests                         |   2 +-
 modules/system-quote                          |   1 +
 modules/system-quote-tests                    |   2 +-
 modules/tempname                              |   2 +-
 modules/term-style-control                    |   2 +-
 modules/term-style-control-tests              |   2 +-
 modules/time_rz                               |   2 +-
 modules/timespec-tests                        |   2 +-
 modules/tmpdir                                |   2 +-
 modules/tmpfile                               |   2 +-
 modules/trunc-tests                           |   2 +-
 modules/truncf-tests                          |   2 +-
 modules/unicase/base                          |   2 +-
 modules/unicase/cased                         |   2 +-
 modules/unicase/ignorable                     |   2 +-
 modules/unicase/u16-casemap                   |   2 +-
 modules/unicase/u16-ct-totitle                |   2 +-
 modules/unicase/u16-is-invariant              |   2 +-
 modules/unicase/u32-casemap                   |   2 +-
 modules/unicase/u32-ct-totitle                |   2 +-
 modules/unicase/u32-is-invariant              |   2 +-
 modules/unicase/u8-casemap                    |   2 +-
 modules/unicase/u8-ct-totitle                 |   2 +-
 modules/unicase/u8-is-invariant               |   2 +-
 modules/uniconv/base                          |   1 +
 modules/unictype/base                         |   2 +-
 modules/unictype/category-byname-tests        |   2 +-
 modules/unigbrk/base                          |   2 +-
 modules/unigbrk/u16-grapheme-breaks           |   2 +-
 modules/unigbrk/u32-grapheme-breaks           |   2 +-
 modules/unigbrk/u8-grapheme-breaks            |   2 +-
 modules/unigbrk/uc-grapheme-breaks            |   2 +-
 modules/unigbrk/uc-is-grapheme-break-tests    |   2 +-
 modules/uniname/uniname                       |   1 +
 modules/unistd-safer-tests                    |   2 +-
 modules/unistr/base                           |   2 +-
 modules/unistr/u16-strstr                     |   2 +-
 modules/unistr/u32-strstr                     |   2 +-
 modules/unlink-tests                          |   2 +-
 modules/unlinkdir                             |   2 +-
 modules/userspec                              |   2 +-
 modules/utime                                 |   1 +
 modules/utimecmp                              |   2 +-
 modules/utimens                               |   2 +-
 modules/wait-process                          |   2 +-
 modules/windows-cond                          |   2 +-
 modules/windows-spawn                         |   2 +-
 modules/windows-timedrwlock                   |   1 +
 modules/write-any-file                        |   2 +-
 modules/xbinary-io                            |   2 +-
 modules/xgetcwd                               |   1 -
 modules/xlist                                 |   2 +-
 modules/xmap                                  |   2 +-
 modules/xomap                                 |   2 +-
 modules/xoset                                 |   2 +-
 modules/xset                                  |   2 +-
 modules/xstrtod                               |   2 +-
 modules/xstrtold                              |   2 +-
 modules/yesno                                 |   2 +-
 tests/nap.h                                   |   1 -
 tests/qemu.h                                  |   1 -
 tests/test-areadlink-with-size.c              |   1 -
 tests/test-areadlink.c                        |   1 -
 tests/test-areadlinkat-with-size.c            |   1 -
 tests/test-areadlinkat.c                      |   1 -
 tests/test-base32.c                           |   1 -
 tests/test-base64.c                           |   1 -
 tests/test-ceil2.c                            |   1 -
 tests/test-ceilf2.c                           |   1 -
 tests/test-chown.c                            |   1 -
 tests/test-dirname.c                          |   1 -
 tests/test-dup-safer.c                        |   1 -
 tests/test-dup3.c                             |   1 -
 tests/test-exclude.c                          |   1 -
 tests/test-execute-child.c                    |   1 -
 tests/test-execute-main.c                     |   1 -
 tests/test-execute-script.c                   |   1 -
 tests/test-explicit_bzero.c                   |   1 -
 tests/test-fchownat.c                         |   1 -
 tests/test-fcntl-safer.c                      |   1 -
 tests/test-fcntl.c                            |   1 -
 tests/test-fdutimensat.c                      |   1 -
 tests/test-filenamecat.c                      |   1 -
 tests/test-floor2.c                           |   1 -
 tests/test-floorf2.c                          |   1 -
 tests/test-fstatat.c                          |   1 -
 tests/test-fstrcmp.c                          |   1 -
 tests/test-futimens.c                         |   1 -
 tests/test-getlogin.h                         |   1 -
 tests/test-getopt.h                           |   1 -
 tests/test-hard-locale.c                      |   1 -
 tests/test-hash.c                             |   1 -
 tests/test-idpriv-drop.c                      |   1 -
 tests/test-idpriv-droptemp.c                  |   1 -
 tests/test-immutable.c                        |   1 -
 tests/test-intprops.c                         |   1 -
 tests/test-lchown.c                           |   1 -
 tests/test-link.c                             |   1 -
 tests/test-linkat.c                           |   1 -
 tests/test-lstat.c                            |   1 -
 tests/test-mbmemcasecmp.c                     |   1 -
 tests/test-mbmemcasecoll.c                    |   1 -
 tests/test-mkdir.c                            |   1 -
 tests/test-mkdirat.c                          |   1 -
 tests/test-mkfifo.c                           |   1 -
 tests/test-mkfifoat.c                         |   1 -
 tests/test-mknod.c                            |   1 -
 tests/test-nonblocking-pipe-child.c           |   1 -
 tests/test-nonblocking-pipe-main.c            |   1 -
 tests/test-nonblocking-socket-child.c         |   1 -
 tests/test-nonblocking-socket-main.c          |   1 -
 tests/test-open.c                             |   1 -
 tests/test-openat.c                           |   1 -
 tests/test-pipe.c                             |   1 -
 tests/test-pipe2.c                            |   1 -
 tests/test-poll.c                             |   1 -
 tests/test-posix_spawn-chdir.c                |   1 -
 tests/test-posix_spawn-dup2-stdin.c           |   1 -
 tests/test-posix_spawn-dup2-stdout.c          |   1 -
 tests/test-posix_spawn-fchdir.c               |   1 -
 tests/test-posix_spawn-open1.c                |   1 -
 tests/test-posix_spawn-open2.c                |   1 -
 tests/test-quotearg-simple.c                  |   1 -
 tests/test-quotearg.c                         |   1 -
 tests/test-readlink.c                         |   1 -
 tests/test-readlinkat.c                       |   1 -
 tests/test-readtokens.c                       |   1 -
 tests/test-rename.c                           |   1 -
 tests/test-renameat.c                         |   1 -
 tests/test-renameatu.c                        |   1 -
 tests/test-rmdir.c                            |   1 -
 tests/test-round2.c                           |   1 -
 tests/test-select.h                           |   1 -
 tests/test-spawn-pipe-child.c                 |   1 -
 tests/test-spawn-pipe-main.c                  |   1 -
 tests/test-spawn-pipe-script.c                |   1 -
 tests/test-stack.c                            |   1 -
 tests/test-stat.c                             |   1 -
 tests/test-supersede.c                        |   1 -
 tests/test-symlink.c                          |   1 -
 tests/test-symlinkat.c                        |   1 -
 tests/test-system-quote-main.c                |   1 -
 tests/test-term-style-control-hello.c         |   1 -
 tests/test-term-style-control-yes.c           |   1 -
 tests/test-timespec.c                         |   1 -
 tests/test-trunc2.c                           |   1 -
 tests/test-truncf2.c                          |   1 -
 tests/test-unlink.c                           |   1 -
 tests/test-unlinkat.c                         |   1 -
 tests/test-userspec.c                         |   1 -
 tests/test-utime.c                            |   1 -
 tests/test-utimens.c                          |   1 -
 tests/test-utimensat.c                        |   1 -
 tests/unictype/test-categ_byname.c            |   1 -
 tests/unigbrk/test-uc-is-grapheme-break.c     |   1 -
 546 files changed, 489 insertions(+), 576 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 80fb38c240..fac42ea549 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,228 @@
 2022-09-08  Paul Eggert  <eggert@xxxxxxxxxxx>
 
+	Prefer c-bool to stdbool
+	Prefer the C23 style to the C99 style, and use c-bool
+	instead of stdbool when that is easy.
+	* lib/acl-internal.h, lib/acl.h, lib/argmatch.c, lib/argmatch.h:
+	* lib/argp-help.c, lib/argv-iter.h, lib/asyncsafe-spin.c:
+	* lib/backup-internal.h, lib/backupfile.c, lib/base32.h:
+	* lib/base64.h, lib/basename-lgpl.c, lib/bitset/base.h:
+	* lib/c-ctype.h, lib/c-strcasestr.c, lib/canonicalize-lgpl.c:
+	* lib/canonicalize.c, lib/chdir-long.c, lib/chown.c:
+	* lib/classpath.h, lib/clean-temp-private.h:
+	* lib/clean-temp-simple.c, lib/clean-temp-simple.h:
+	* lib/clean-temp.c, lib/clean-temp.h, lib/cloexec.h:
+	* lib/close-stream.c, lib/closein.c, lib/closeout.c, lib/closeout.h:
+	* lib/csharpcomp.h, lib/csharpexec.h, lib/cycle-check.c:
+	* lib/cycle-check.h, lib/des.h, lib/dfa.h, lib/diffseq.h:
+	* lib/dirname.h, lib/exclude.c, lib/exclude.h, lib/execute.c:
+	* lib/execute.h, lib/execvpe.c, lib/fatal-signal.c, lib/fchdir.c:
+	* lib/file-set.h, lib/filevercmp.c, lib/findprog-in.c:
+	* lib/findprog.c, lib/findprog.h, lib/fma.c, lib/fnmatch.c:
+	* lib/fopen.c, lib/freadable.h, lib/freading.h, lib/freopen-safer.c:
+	* lib/fstrcmp.c, lib/fsusage.h, lib/fts.c, lib/fwritable.h:
+	* lib/fwriteerror.c, lib/fwriting.h, lib/gen-uni-tables.c:
+	* lib/getaddrinfo.c, lib/getcwd.c, lib/getloadavg.c:
+	* lib/getndelim2.c, lib/getpass.c, lib/getrandom.c:
+	* lib/git-merge-changelog.c, lib/gl_list.h, lib/gl_map.h:
+	* lib/gl_omap.h, lib/gl_oset.h, lib/gl_set.h, lib/glob.c:
+	* lib/glthread/cond.h, lib/hamt.h, lib/hard-locale.h:
+	* lib/hash-triple.h, lib/hash.h, lib/human.h, lib/i-ring.h:
+	* lib/isapipe.c, lib/javacomp.h, lib/javaexec.h, lib/javaversion.c:
+	* lib/lchown.c, lib/localeinfo.h, lib/localename.c:
+	* lib/long-options.h, lib/malloc/dynarray.h, lib/mbchar.h:
+	* lib/mbfile.h, lib/mbiter.h, lib/mbmemcasecoll.h, lib/mbscasestr.c:
+	* lib/mbsstr.c, lib/mbuiter.h, lib/mkdir-p.h, lib/modechange.h:
+	* lib/mountlist.h, lib/nanosleep.c, lib/nonblocking.h:
+	* lib/nstrftime.c, lib/openat.c, lib/openat.h, lib/os2-spawn.c:
+	* lib/parse-datetime.h, lib/pipe-filter-aux.c, lib/pipe-filter-gi.c:
+	* lib/pipe-filter-ii.c, lib/pipe-filter.h, lib/posixtm.h:
+	* lib/priv-set.c, lib/progreloc.c, lib/propername.c:
+	* lib/pthread-spin.c, lib/quotearg.c, lib/readtokens.c:
+	* lib/readtokens0.h, lib/readutmp.c, lib/regex-quote.h:
+	* lib/regex_internal.h, lib/relocwrapper.c, lib/rename.c:
+	* lib/renameatu.c, lib/rpmatch.c, lib/same.c, lib/same.h:
+	* lib/save-cwd.c, lib/savewd.c, lib/savewd.h, lib/spawn-pipe.h:
+	* lib/spawni.c, lib/stack.h, lib/stat.c, lib/stdckdint.in.h:
+	* lib/strcasestr.c, lib/strfmon_l.c, lib/striconveh.c:
+	* lib/striconveha.h, lib/string-buffer.h, lib/strptime.c:
+	* lib/strstr.c, lib/strtod.c, lib/supersede.h, lib/system-quote.c:
+	* lib/tempname.c, lib/term-style-control.c:
+	* lib/term-style-control.h, lib/textstyle.in.h, lib/time_rz.c:
+	* lib/tmpdir.c, lib/tmpdir.h, lib/tmpfile.c, lib/unicase.in.h:
+	* lib/unicase/caseprop.h, lib/unicase/invariant.h:
+	* lib/unicase/u16-casemap.c, lib/unicase/u16-ct-totitle.c:
+	* lib/unicase/u16-is-invariant.c, lib/unicase/u32-casemap.c:
+	* lib/unicase/u32-ct-totitle.c, lib/unicase/u32-is-invariant.c:
+	* lib/unicase/u8-casemap.c, lib/unicase/u8-ct-totitle.c:
+	* lib/unicase/u8-is-invariant.c, lib/unictype.in.h:
+	* lib/unigbrk.in.h, lib/unigbrk/u16-grapheme-breaks.c:
+	* lib/unigbrk/u32-grapheme-breaks.c:
+	* lib/unigbrk/u8-grapheme-breaks.c:
+	* lib/unigbrk/uc-grapheme-breaks.c, lib/uniname/uniname.c:
+	* lib/unistr.in.h, lib/unlinkdir.h, lib/userspec.h, lib/utime.c:
+	* lib/utimecmp.c, lib/utimens.c, lib/wait-process.h:
+	* lib/windows-cond.c, lib/windows-spawn.c, lib/windows-spawn.h:
+	* lib/windows-timedrwlock.c, lib/write-any-file.h, lib/xbinary-io.c:
+	* lib/xstrtod.h, lib/yesno.h:
+	* tests/nap.h, tests/qemu.h, tests/test-areadlink-with-size.c:
+	* tests/test-areadlink.c, tests/test-areadlinkat-with-size.c:
+	* tests/test-areadlinkat.c, tests/test-base32.c:
+	* tests/test-base64.c, tests/test-ceil2.c, tests/test-ceilf2.c:
+	* tests/test-chown.c, tests/test-dirname.c, tests/test-dup-safer.c:
+	* tests/test-dup3.c, tests/test-exclude.c:
+	* tests/test-execute-child.c, tests/test-execute-main.c:
+	* tests/test-execute-script.c, tests/test-explicit_bzero.c:
+	* tests/test-fchownat.c, tests/test-fcntl-safer.c:
+	* tests/test-fcntl.c, tests/test-fdutimensat.c:
+	* tests/test-filenamecat.c, tests/test-floor2.c:
+	* tests/test-floorf2.c, tests/test-fstatat.c, tests/test-fstrcmp.c:
+	* tests/test-futimens.c, tests/test-getlogin.h, tests/test-getopt.h:
+	* tests/test-hard-locale.c, tests/test-hash.c:
+	* tests/test-idpriv-drop.c, tests/test-idpriv-droptemp.c:
+	* tests/test-immutable.c, tests/test-intprops.c:
+	* tests/test-lchown.c, tests/test-link.c, tests/test-linkat.c:
+	* tests/test-lstat.c, tests/test-mbmemcasecmp.c:
+	* tests/test-mbmemcasecoll.c, tests/test-mkdir.c:
+	* tests/test-mkdirat.c, tests/test-mkfifo.c, tests/test-mkfifoat.c:
+	* tests/test-mknod.c, tests/test-nonblocking-pipe-child.c:
+	* tests/test-nonblocking-pipe-main.c:
+	* tests/test-nonblocking-socket-child.c:
+	* tests/test-nonblocking-socket-main.c, tests/test-open.c:
+	* tests/test-openat.c, tests/test-pipe.c, tests/test-pipe2.c:
+	* tests/test-poll.c, tests/test-posix_spawn-chdir.c:
+	* tests/test-posix_spawn-dup2-stdin.c:
+	* tests/test-posix_spawn-dup2-stdout.c:
+	* tests/test-posix_spawn-fchdir.c, tests/test-posix_spawn-open1.c:
+	* tests/test-posix_spawn-open2.c, tests/test-quotearg-simple.c:
+	* tests/test-quotearg.c, tests/test-readlink.c:
+	* tests/test-readlinkat.c, tests/test-readtokens.c:
+	* tests/test-rename.c, tests/test-renameat.c:
+	* tests/test-renameatu.c, tests/test-rmdir.c, tests/test-round2.c:
+	* tests/test-select.h, tests/test-spawn-pipe-child.c:
+	* tests/test-spawn-pipe-main.c, tests/test-spawn-pipe-script.c:
+	* tests/test-stack.c, tests/test-stat.c, tests/test-supersede.c:
+	* tests/test-symlink.c, tests/test-symlinkat.c:
+	* tests/test-system-quote-main.c:
+	* tests/test-term-style-control-hello.c:
+	* tests/test-term-style-control-yes.c, tests/test-timespec.c:
+	* tests/test-trunc2.c, tests/test-truncf2.c, tests/test-unlink.c:
+	* tests/test-unlinkat.c, tests/test-userspec.c, tests/test-utime.c:
+	* tests/test-utimens.c, tests/test-utimensat.c:
+	* tests/unictype/test-categ_byname.c:
+	* tests/unigbrk/test-uc-is-grapheme-break.c:
+	Don’t include stdbool.h.
+	* modules/acl-permissions, modules/areadlink-tests:
+	* modules/areadlink-with-size-tests, modules/areadlinkat-tests:
+	* modules/areadlinkat-with-size-tests, modules/argmatch:
+	* modules/argv-iter, modules/asyncsafe-spin:
+	* modules/backup-rename, modules/backupfile, modules/base32:
+	* modules/base64, modules/basename-lgpl:
+	* modules/c-ctype, modules/c-strcasestr, modules/canonicalize:
+	* modules/canonicalize-lgpl, modules/ceil-tests:
+	* modules/ceilf-tests, modules/chdir-long, modules/chown:
+	* modules/chown-tests, modules/classpath, modules/clean-temp:
+	* modules/clean-temp-simple, modules/cloexec, modules/close-stream:
+	* modules/closein, modules/closeout, modules/cond:
+	* modules/crypto/des, modules/csharpcomp, modules/csharpexec:
+	* modules/cycle-check, modules/dfa:
+	* modules/dirname-lgpl, modules/dprintf-posix-tests:
+	* modules/dynarray, modules/exclude, modules/execute:
+	* modules/execute-tests, modules/execvpe, modules/fatal-signal:
+	* modules/fchdir, modules/fcntl-safer-tests, modules/fcntl-tests:
+	* modules/file-set, modules/filenamecat-tests:
+	* modules/filevercmp, modules/findprog, modules/findprog-in:
+	* modules/findprog-lgpl, modules/floor-tests, modules/floorf-tests:
+	* modules/fma, modules/fmaf, modules/fmal, modules/fnmatch:
+	* modules/fopen, modules/fopen-gnu, modules/fprintf-posix-tests:
+	* modules/freadable, modules/freading, modules/freopen-safer:
+	* modules/fstrcmp-tests, modules/fsusage, modules/fts:
+	* modules/fwritable, modules/fwriteerror, modules/fwriting:
+	* modules/get-rusage-as-tests:
+	* modules/get-rusage-data-tests, modules/getaddrinfo:
+	* modules/getcwd, modules/getcwd-tests, modules/getloadavg:
+	* modules/getlogin-tests, modules/getlogin_r-tests:
+	* modules/getndelim2, modules/getopt-gnu-tests:
+	* modules/getopt-posix-tests, modules/getpass:
+	* modules/git-merge-changelog, modules/glob, modules/hamt:
+	* modules/hard-locale, modules/hash, modules/hash-tests:
+	* modules/human, modules/i-ring:
+	* modules/idpriv-drop-tests, modules/idpriv-droptemp-tests:
+	* modules/immutable-tests, modules/intprops-tests, modules/isapipe:
+	* modules/javacomp, modules/javaexec, modules/javaversion:
+	* modules/lchown, modules/lchown-tests:
+	* modules/libtextstyle-optional, modules/link-tests, modules/list:
+	* modules/localename, modules/long-options, modules/lstat-tests:
+	* modules/map, modules/mbchar, modules/mbfile, modules/mbiter:
+	* modules/mbmemcasecmp-tests, modules/mbmemcasecoll:
+	* modules/mbmemcasecoll-tests, modules/mbscasestr, modules/mbsstr:
+	* modules/mbuiter, modules/mkdir-p, modules/mkdir-tests:
+	* modules/mkfifo-tests, modules/mknod-tests, modules/modechange:
+	* modules/mountlist, modules/nanosleep, modules/nonblocking:
+	* modules/nonblocking-pipe-tests, modules/nonblocking-socket-tests:
+	* modules/nstrftime, modules/omap, modules/open-tests:
+	* modules/openat, modules/openat-h, modules/oset:
+	* modules/parse-datetime, modules/pipe-filter-gi:
+	* modules/pipe-filter-ii, modules/pipe-posix-tests:
+	* modules/pipe2-tests, modules/poll-tests:
+	* modules/posix_spawn-tests:
+	* modules/posix_spawn_file_actions_addfchdir-tests:
+	* modules/posix_spawnp-tests, modules/posixtm, modules/priv-set:
+	* modules/propername, modules/pselect-tests, modules/pthread-spin:
+	* modules/quotearg, modules/readlink-tests, modules/readtokens:
+	* modules/readtokens0, modules/readutmp, modules/regex:
+	* modules/regex-quote, modules/relocatable-prog:
+	* modules/rename:
+	* modules/rename-tests, modules/renameatu, modules/rmdir-tests:
+	* modules/round-tests, modules/roundf-tests, modules/rpmatch:
+	* modules/same, modules/save-cwd, modules/savewd:
+	* modules/select-tests, modules/set:
+	* modules/spawn-pipe, modules/spawn-pipe-tests, modules/stack:
+	* modules/stat, modules/stat-tests, modules/stdckdint:
+	* modules/stdckdint-tests:
+	* modules/strcasestr-simple, modules/strfmon_l, modules/striconveh:
+	* modules/striconveha, modules/string-buffer, modules/strptime:
+	* modules/strstr-simple, modules/strtod, modules/strtold:
+	* modules/symlink-tests:
+	* modules/system-quote-tests, modules/tempname:
+	* modules/term-style-control, modules/term-style-control-tests:
+	* modules/time_rz, modules/timespec-tests, modules/tmpdir:
+	* modules/tmpfile, modules/trunc-tests, modules/truncf-tests:
+	* modules/unicase/base, modules/unicase/cased:
+	* modules/unicase/ignorable, modules/unicase/u16-casemap:
+	* modules/unicase/u16-ct-totitle, modules/unicase/u16-is-invariant:
+	* modules/unicase/u32-casemap, modules/unicase/u32-ct-totitle:
+	* modules/unicase/u32-is-invariant, modules/unicase/u8-casemap:
+	* modules/unicase/u8-ct-totitle, modules/unicase/u8-is-invariant:
+	* modules/unictype/base:
+	* modules/unictype/category-byname-tests, modules/unigbrk/base:
+	* modules/unigbrk/u16-grapheme-breaks:
+	* modules/unigbrk/u32-grapheme-breaks:
+	* modules/unigbrk/u8-grapheme-breaks:
+	* modules/unigbrk/uc-grapheme-breaks:
+	* modules/unigbrk/uc-is-grapheme-break-tests:
+	* modules/unistd-safer-tests:
+	* modules/unistr/base, modules/unistr/u16-strstr:
+	* modules/unistr/u32-strstr, modules/unlink-tests:
+	* modules/unlinkdir, modules/userspec:
+	* modules/utimecmp, modules/utimens, modules/wait-process:
+	* modules/windows-cond, modules/windows-spawn:
+	* modules/write-any-file:
+	* modules/xbinary-io, modules/xlist, modules/xmap:
+	* modules/xomap, modules/xoset, modules/xset, modules/xstrtod:
+	* modules/xstrtold, modules/yesno:
+	Depend on c-bool, not stdbool.
+	* modules/acl, modules/xgetcwd:
+	Don’t depend on stdbool.
+	* modules/argp, modules/bitset, modules/diffseq, modules/file-has-acl:
+	* modules/gen-uni-tables, modules/getrandom:
+	* modules/hash-triple-simple, modules/posix_spawn-internal:
+	* modules/relocatable-prog-wrapper, modules/scratch_buffer:
+	* modules/strcasestr, modules/supersede, modules/system-quote:
+	* modules/uniconv/base, modules/uniname/uniname, modules/utime:
+	* modules/windows-timedrwlock:
+	Depend on c-bool.
+
 	c-bool: new module
 	* tests/test-stdbool.c [TEST_C_BOOL]: Do not include stdbool.h.
 	* m4/c-bool.m4, modules/c-bool, modules/c-bool-tests:
diff --git a/doc/gnulib-intro.texi b/doc/gnulib-intro.texi
index 71634de698..1937909641 100644
--- a/doc/gnulib-intro.texi
+++ b/doc/gnulib-intro.texi
@@ -389,7 +389,7 @@ making use of @code{foo} could end up residing in a shared library, and
 the executable program using this library could be defining @code{foo}
 itself).
 
-For header files, such as @code{stdbool.h} or @code{stdint.h}, we provide
+For header files, such as @code{stdint.h}, we provide
 the substitute only if the system doesn't provide a correct one.  The
 template of this replacement is distributed in a slightly different name,
 with @samp{.in} inserted before the @samp{.h} extension, so that on
diff --git a/doc/gnulib-readme.texi b/doc/gnulib-readme.texi
index 492572799c..b8a8232e8f 100644
--- a/doc/gnulib-readme.texi
+++ b/doc/gnulib-readme.texi
@@ -324,8 +324,9 @@ platforms, fixes that may be removed in the future.
 
 Because of the freestanding C99 assumption, Gnulib code can include
 @code{<float.h>}, @code{<limits.h>}, @code{<stdarg.h>},
-@code{<stdbool.h>}, @code{<stddef.h>}, and @code{<stdint.h>}
-unconditionally.   Gnulib code can also assume the existence
+@code{<stddef.h>}, and @code{<stdint.h>}
+unconditionally; @code{<stdbool.h>} is also in the C99 freestanding
+list but is obsolescent as of C23.  Gnulib code can also assume the existence
 of @code{<ctype.h>}, @code{<errno.h>}, @code{<fcntl.h>},
 @code{<locale.h>}, @code{<signal.h>}, @code{<stdio.h>},
 @code{<stdlib.h>}, @code{<string.h>}, and @code{<time.h>}.  Similarly,
@@ -363,8 +364,10 @@ A declaration after a statement, or as the first clause in a
 @code{long long int}.
 
 @item
-@code{<stdbool.h>}, assuming the @code{stdbool} module is used.
-@xref{stdbool.h}.
+@code{<stdbool.h>}, although Gnulib code no longer uses
+it directly, preferring plain @code{bool} via the
+@code{c-bool} module instead.
+@xref{c-bool}.
 
 @item
 @code{<stdint.h>}, assuming the @code{stdint} module is used.
diff --git a/doc/gnulib.texi b/doc/gnulib.texi
index 16ca2690d3..a0461310d9 100644
--- a/doc/gnulib.texi
+++ b/doc/gnulib.texi
@@ -888,7 +888,7 @@ On pre-C23 platforms, the keyword substitutes are macros.
 @item
 On pre-C23 platforms, the keyword substitutes assume C99 or later.
 If your code needs to be portable to pre-C99 platforms,
-it needs to also use the @code{stdbool} module.
+it should also use the @code{stdbool} module.
 @end itemize
 
 @node Header File Substitutes
diff --git a/doc/intprops.texi b/doc/intprops.texi
index 2bf36254a5..e11192d97f 100644
--- a/doc/intprops.texi
+++ b/doc/intprops.texi
@@ -61,7 +61,7 @@ but it does not assume that signed integer arithmetic wraps around.
 @findex TYPE_IS_INTEGER
 @code{TYPE_IS_INTEGER (@var{t})} is an arithmetic constant
 expression that is 1 if the arithmetic type @var{t} is an integer type.
-@code{_Bool} counts as an integer type.
+@code{bool} counts as an integer type.
 
 @findex TYPE_SIGNED
 @code{TYPE_SIGNED (@var{t})} is an arithmetic constant expression
@@ -140,7 +140,6 @@ values of the integer type @var{t}.  These expressions are of the type
 Example usage:
 
 @example
-#include <stdbool.h>
 #include <sys/types.h>
 #include <intprops.h>
 bool
diff --git a/doc/posix-headers/stdbool.texi b/doc/posix-headers/stdbool.texi
index 5b7ed0753f..5ff20dce2b 100644
--- a/doc/posix-headers/stdbool.texi
+++ b/doc/posix-headers/stdbool.texi
@@ -25,8 +25,10 @@ Portability problems not fixed by Gnulib:
 @item
 @samp{_Bool} cannot be used before @code{<stdbool.h>} is included, or if
 the program is intended to be compiled by a C++ compiler.
+(With the advent of C23, @samp{_Bool} is obsolescent anyway.)
 @item
 You cannot assume that @code{_Bool} is a typedef; it might be a macro.
+For example, C23 allows @code{_Bool} to be a macro.
 @item
 Bit-fields of type @samp{bool} are not supported.  Portable code
 should use @samp{unsigned int foo : 1;} rather than @samp{bool foo : 1;}.
diff --git a/lib/acl-internal.h b/lib/acl-internal.h
index 93533762dd..94553fab25 100644
--- a/lib/acl-internal.h
+++ b/lib/acl-internal.h
@@ -19,7 +19,6 @@
 
 #include "acl.h"
 
-#include <stdbool.h>
 #include <stdlib.h>
 
 /* All systems define the ACL related API in <sys/acl.h>.  */
diff --git a/lib/acl.h b/lib/acl.h
index f4d0df8061..0be6ef1cea 100644
--- a/lib/acl.h
+++ b/lib/acl.h
@@ -20,7 +20,6 @@
 #ifndef _GL_ACL_H
 #define _GL_ACL_H 1
 
-#include <stdbool.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 
diff --git a/lib/argmatch.c b/lib/argmatch.c
index 2a28900a4e..16478de124 100644
--- a/lib/argmatch.c
+++ b/lib/argmatch.c
@@ -24,7 +24,6 @@
 /* Specification.  */
 #include "argmatch.h"
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/argmatch.h b/lib/argmatch.h
index 52f2bb727b..846cff9066 100644
--- a/lib/argmatch.h
+++ b/lib/argmatch.h
@@ -23,7 +23,6 @@
 # define ARGMATCH_H_ 1
 
 # include <limits.h>
-# include <stdbool.h>
 # include <stddef.h>
 # include <stdio.h>
 # include <string.h> /* memcmp */
diff --git a/lib/argp-help.c b/lib/argp-help.c
index 39d7168520..9166cc1c93 100644
--- a/lib/argp-help.c
+++ b/lib/argp-help.c
@@ -26,7 +26,6 @@
 
 #include <alloca.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/argv-iter.h b/lib/argv-iter.h
index c6ad11360c..68665be20e 100644
--- a/lib/argv-iter.h
+++ b/lib/argv-iter.h
@@ -15,7 +15,6 @@
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
 #include <stdio.h>
-#include <stdbool.h>
 
 /* Definition of _GL_ARG_NONNULL.  */
 #include "arg-nonnull.h"
diff --git a/lib/asyncsafe-spin.c b/lib/asyncsafe-spin.c
index 599cee7195..24705fc8df 100644
--- a/lib/asyncsafe-spin.c
+++ b/lib/asyncsafe-spin.c
@@ -21,12 +21,10 @@
 /* Specification.  */
 #include "asyncsafe-spin.h"
 
-#include <stdbool.h>
 #include <stdlib.h>
 #if defined _AIX
 # include <sys/atomic_op.h>
 #endif
-
 #if 0x590 <= __SUNPRO_C && __STDC__
 # define asm __asm
 #endif
diff --git a/lib/backup-internal.h b/lib/backup-internal.h
index 039c2323cd..ca8d0f2a76 100644
--- a/lib/backup-internal.h
+++ b/lib/backup-internal.h
@@ -16,7 +16,6 @@
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
 #include "backupfile.h"
-#include <stdbool.h>
 #include <stdlib.h>
 
 extern char *backupfile_internal (int, char const *, enum backup_type, bool)
diff --git a/lib/backupfile.c b/lib/backupfile.c
index b2ab67847a..f2ad0eb404 100644
--- a/lib/backupfile.c
+++ b/lib/backupfile.c
@@ -25,7 +25,6 @@
 #include <dirent.h>
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdckdint.h>
 #include <stdint.h>
 #include <stdlib.h>
diff --git a/lib/base32.h b/lib/base32.h
index 4145fe7a03..a2abea6825 100644
--- a/lib/base32.h
+++ b/lib/base32.h
@@ -21,9 +21,6 @@
 /* Get idx_t. */
 # include <idx.h>
 
-/* Get bool. */
-# include <stdbool.h>
-
 /* This uses that the expression (n+(k-1))/k means the smallest
    integer >= n/k, i.e., the ceiling of n/k.  */
 # define BASE32_LENGTH(inlen) ((((inlen) + 4) / 5) * 8)
diff --git a/lib/base64.h b/lib/base64.h
index 6b8b3dc348..c4b2ac07b9 100644
--- a/lib/base64.h
+++ b/lib/base64.h
@@ -21,9 +21,6 @@
 /* Get idx_t.  */
 # include <idx.h>
 
-/* Get bool. */
-# include <stdbool.h>
-
 # ifdef __cplusplus
 extern "C" {
 # endif
diff --git a/lib/basename-lgpl.c b/lib/basename-lgpl.c
index eb07e25413..f8da1484da 100644
--- a/lib/basename-lgpl.c
+++ b/lib/basename-lgpl.c
@@ -21,7 +21,6 @@
 /* Specification.  */
 #include "basename-lgpl.h"
 
-#include <stdbool.h>
 #include <string.h>
 
 #include "filename.h"
diff --git a/lib/bitset/base.h b/lib/bitset/base.h
index 504a1e525c..7d87362cf2 100644
--- a/lib/bitset/base.h
+++ b/lib/bitset/base.h
@@ -22,7 +22,6 @@
 #define _BITSET_BASE_H
 
 #include <limits.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>     /* because Gnulib's <stdlib.h> may '#define free ...' */
 #include <string.h> /* ffsl */
diff --git a/lib/c-ctype.h b/lib/c-ctype.h
index 1a4f603898..1202ff8a36 100644
--- a/lib/c-ctype.h
+++ b/lib/c-ctype.h
@@ -23,8 +23,6 @@
 #ifndef C_CTYPE_H
 #define C_CTYPE_H
 
-#include <stdbool.h>
-
 #ifndef _GL_INLINE_HEADER_BEGIN
  #error "Please include config.h first."
 #endif
diff --git a/lib/c-strcasestr.c b/lib/c-strcasestr.c
index 0c691852f8..73bfe541f4 100644
--- a/lib/c-strcasestr.c
+++ b/lib/c-strcasestr.c
@@ -20,7 +20,6 @@
 /* Specification.  */
 #include "c-strcasestr.h"
 
-#include <stdbool.h>
 #include <string.h>
 
 #include "c-ctype.h"
diff --git a/lib/canonicalize-lgpl.c b/lib/canonicalize-lgpl.c
index a7fa7feb62..8c3d7f7cf8 100644
--- a/lib/canonicalize-lgpl.c
+++ b/lib/canonicalize-lgpl.c
@@ -30,7 +30,6 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <limits.h>
-#include <stdbool.h>
 #include <string.h>
 #include <sys/stat.h>
 #include <unistd.h>
diff --git a/lib/canonicalize.c b/lib/canonicalize.c
index eaf18c6d19..e331e3ff1b 100644
--- a/lib/canonicalize.c
+++ b/lib/canonicalize.c
@@ -20,7 +20,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <string.h>
 #include <sys/stat.h>
 #include <unistd.h>
diff --git a/lib/chdir-long.c b/lib/chdir-long.c
index f4efb20989..1c19fa4737 100644
--- a/lib/chdir-long.c
+++ b/lib/chdir-long.c
@@ -23,7 +23,6 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <stdlib.h>
-#include <stdbool.h>
 #include <string.h>
 #include <stdio.h>
 
diff --git a/lib/chown.c b/lib/chown.c
index 705ca85874..e68acdaf71 100644
--- a/lib/chown.c
+++ b/lib/chown.c
@@ -25,7 +25,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <string.h>
 #include <sys/stat.h>
 
diff --git a/lib/classpath.h b/lib/classpath.h
index 0a2ad0cf69..53253f1f83 100644
--- a/lib/classpath.h
+++ b/lib/classpath.h
@@ -15,8 +15,6 @@
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
-
 /* Return the new CLASSPATH value.  The given classpaths are prepended to
    the current CLASSPATH value.   If use_minimal_classpath, the current
    CLASSPATH is ignored.  */
diff --git a/lib/clean-temp-private.h b/lib/clean-temp-private.h
index f1c5e0386d..6f21816b8b 100644
--- a/lib/clean-temp-private.h
+++ b/lib/clean-temp-private.h
@@ -17,7 +17,6 @@
 #ifndef _CLEAN_TEMP_PRIVATE_H
 #define _CLEAN_TEMP_PRIVATE_H
 
-#include <stdbool.h>
 #include <stddef.h>
 #include "gl_list.h"
 #include "asyncsafe-spin.h"
diff --git a/lib/clean-temp-simple.c b/lib/clean-temp-simple.c
index e9612f8316..53127d0bf0 100644
--- a/lib/clean-temp-simple.c
+++ b/lib/clean-temp-simple.c
@@ -24,7 +24,6 @@
 #include <errno.h>
 #include <limits.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/lib/clean-temp-simple.h b/lib/clean-temp-simple.h
index a0a3c71a34..d55e8d2482 100644
--- a/lib/clean-temp-simple.h
+++ b/lib/clean-temp-simple.h
@@ -18,8 +18,6 @@
 #ifndef _CLEAN_TEMP_SIMPLE_H
 #define _CLEAN_TEMP_SIMPLE_H
 
-#include <stdbool.h>
-
 #ifdef __cplusplus
 extern "C" {
 #endif
diff --git a/lib/clean-temp.c b/lib/clean-temp.c
index 09f4eccabd..d4f0ca3ca5 100644
--- a/lib/clean-temp.c
+++ b/lib/clean-temp.c
@@ -24,7 +24,6 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/clean-temp.h b/lib/clean-temp.h
index 7f114c61f3..451a43d121 100644
--- a/lib/clean-temp.h
+++ b/lib/clean-temp.h
@@ -18,7 +18,6 @@
 #ifndef _CLEAN_TEMP_H
 #define _CLEAN_TEMP_H
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <sys/types.h>
 
diff --git a/lib/cloexec.h b/lib/cloexec.h
index 7a22d77532..15d2d5efe2 100644
--- a/lib/cloexec.h
+++ b/lib/cloexec.h
@@ -15,8 +15,6 @@
    You should have received a copy of the GNU Lesser General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
-
 /* Set the 'FD_CLOEXEC' flag of DESC if VALUE is true,
    or clear the flag if VALUE is false.
    Return 0 on success, or -1 on error with 'errno' set.
diff --git a/lib/close-stream.c b/lib/close-stream.c
index 9b0e97b271..0fdca79bf8 100644
--- a/lib/close-stream.c
+++ b/lib/close-stream.c
@@ -20,7 +20,6 @@
 #include "close-stream.h"
 
 #include <errno.h>
-#include <stdbool.h>
 
 #include "fpending.h"
 
diff --git a/lib/closein.c b/lib/closein.c
index b891c42e0d..702faece8b 100644
--- a/lib/closein.c
+++ b/lib/closein.c
@@ -20,7 +20,6 @@
 #include "closein.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <unistd.h>
 
diff --git a/lib/closeout.c b/lib/closeout.c
index 688cd730bf..cfb6efcae5 100644
--- a/lib/closeout.c
+++ b/lib/closeout.c
@@ -21,7 +21,6 @@
 #include "closeout.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <unistd.h>
 
diff --git a/lib/closeout.h b/lib/closeout.h
index fe24c4e11e..9ea15cebb9 100644
--- a/lib/closeout.h
+++ b/lib/closeout.h
@@ -19,8 +19,6 @@
 #ifndef CLOSEOUT_H
 # define CLOSEOUT_H 1
 
-# include <stdbool.h>
-
 # ifdef __cplusplus
 extern "C" {
 # endif
diff --git a/lib/csharpcomp.h b/lib/csharpcomp.h
index a16b38ca25..b60c84cccd 100644
--- a/lib/csharpcomp.h
+++ b/lib/csharpcomp.h
@@ -18,8 +18,6 @@
 #ifndef _CSHARPCOMP_H
 #define _CSHARPCOMP_H
 
-#include <stdbool.h>
-
 /* Compile a set of C# source files to bytecode.
    sources is an array of source file names, including resource files.
    libdirs is a list of directories to be searched for libraries.
diff --git a/lib/csharpexec.h b/lib/csharpexec.h
index d867ef11d6..d9c6557570 100644
--- a/lib/csharpexec.h
+++ b/lib/csharpexec.h
@@ -18,8 +18,6 @@
 #ifndef _CSHARPEXEC_H
 #define _CSHARPEXEC_H
 
-#include <stdbool.h>
-
 typedef bool execute_fn (const char *progname,
                          const char *prog_path, const char * const *prog_argv,
                          void *private_data);
diff --git a/lib/cycle-check.c b/lib/cycle-check.c
index 20e0e1e337..70eaaac084 100644
--- a/lib/cycle-check.c
+++ b/lib/cycle-check.c
@@ -25,7 +25,6 @@
 #include <sys/stat.h>
 #include <stdio.h>
 #include <stdlib.h>
-#include <stdbool.h>
 
 #include "assure.h"
 
diff --git a/lib/cycle-check.h b/lib/cycle-check.h
index a297330fda..130de4d65e 100644
--- a/lib/cycle-check.h
+++ b/lib/cycle-check.h
@@ -21,7 +21,6 @@
 # define CYCLE_CHECK_H 1
 
 # include <stdint.h>
-# include <stdbool.h>
 # include "dev-ino.h"
 # include "same-inode.h"
 
diff --git a/lib/des.h b/lib/des.h
index cb6f3af261..f2863cd19f 100644
--- a/lib/des.h
+++ b/lib/des.h
@@ -23,7 +23,6 @@
 
 #include <stddef.h>
 #include <stdint.h>
-#include <stdbool.h>
 
 /*
  * Encryption/Decryption context of DES
diff --git a/lib/dfa.h b/lib/dfa.h
index 043f0e9717..3e3a938aaa 100644
--- a/lib/dfa.h
+++ b/lib/dfa.h
@@ -23,7 +23,6 @@
 
 #include "idx.h"
 #include <regex.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 
diff --git a/lib/diffseq.h b/lib/diffseq.h
index 0f76ea1d5a..a8b0e7bd40 100644
--- a/lib/diffseq.h
+++ b/lib/diffseq.h
@@ -70,7 +70,6 @@
 
    Before including this file, you also need to include:
      #include <limits.h>
-     #include <stdbool.h>
      #include "minmax.h"
  */
 
diff --git a/lib/dirname.h b/lib/dirname.h
index e18a97ea1c..573fa6c1c7 100644
--- a/lib/dirname.h
+++ b/lib/dirname.h
@@ -19,7 +19,6 @@
 #ifndef DIRNAME_H_
 # define DIRNAME_H_ 1
 
-# include <stdbool.h>
 # include <stdlib.h>
 # include "filename.h"
 # include "basename-lgpl.h"
diff --git a/lib/exclude.c b/lib/exclude.c
index 3770c48287..a39df312f2 100644
--- a/lib/exclude.c
+++ b/lib/exclude.c
@@ -23,8 +23,6 @@
 
 #include <config.h>
 
-#include <stdbool.h>
-
 #include <ctype.h>
 #include <errno.h>
 #include <stddef.h>
diff --git a/lib/exclude.h b/lib/exclude.h
index 020b3c36d8..f66ee3b4dc 100644
--- a/lib/exclude.h
+++ b/lib/exclude.h
@@ -19,7 +19,6 @@
 #ifndef _GL_EXCLUDE_H
 #define _GL_EXCLUDE_H 1
 
-#include <stdbool.h>
 #include <stdio.h>
 
 /* Written by Paul Eggert <eggert@xxxxxxxxxxx>
diff --git a/lib/execute.c b/lib/execute.c
index 2ce5c15476..ce6804b9c1 100644
--- a/lib/execute.c
+++ b/lib/execute.c
@@ -23,7 +23,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <signal.h>
 #include <unistd.h>
diff --git a/lib/execute.h b/lib/execute.h
index d40d5093af..1a04f32d75 100644
--- a/lib/execute.h
+++ b/lib/execute.h
@@ -18,8 +18,6 @@
 #ifndef _EXECUTE_H
 #define _EXECUTE_H
 
-#include <stdbool.h>
-
 /* Execute a command, optionally redirecting any of the three standard file
    descriptors to /dev/null.  Return its exit code.
    If it didn't terminate correctly, exit if exit_on_error is true, otherwise
diff --git a/lib/execvpe.c b/lib/execvpe.c
index cbe325fb70..491cbb8eb5 100644
--- a/lib/execvpe.c
+++ b/lib/execvpe.c
@@ -26,7 +26,6 @@
 #include <unistd.h>
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 
 #include "findprog.h"
diff --git a/lib/fatal-signal.c b/lib/fatal-signal.c
index f036785898..1d930b14e1 100644
--- a/lib/fatal-signal.c
+++ b/lib/fatal-signal.c
@@ -21,7 +21,6 @@
 /* Specification.  */
 #include "fatal-signal.h"
 
-#include <stdbool.h>
 #include <stdlib.h>
 #include <signal.h>
 #include <unistd.h>
diff --git a/lib/fchdir.c b/lib/fchdir.c
index 99e4aa851c..846890704d 100644
--- a/lib/fchdir.c
+++ b/lib/fchdir.c
@@ -22,7 +22,6 @@
 #include <dirent.h>
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <sys/types.h>
diff --git a/lib/file-set.h b/lib/file-set.h
index dc9d0ae519..e95879f831 100644
--- a/lib/file-set.h
+++ b/lib/file-set.h
@@ -18,7 +18,6 @@
 
 #include <sys/types.h>
 #include <sys/stat.h>
-#include <stdbool.h>
 
 #include "hash.h"
 
diff --git a/lib/filevercmp.c b/lib/filevercmp.c
index 7e54793e61..cb1b38d473 100644
--- a/lib/filevercmp.c
+++ b/lib/filevercmp.c
@@ -20,7 +20,6 @@
 #include <config.h>
 #include "filevercmp.h"
 
-#include <stdbool.h>
 #include <c-ctype.h>
 #include <limits.h>
 #include <idx.h>
diff --git a/lib/findprog-in.c b/lib/findprog-in.c
index 72a05dbf50..0957488246 100644
--- a/lib/findprog-in.c
+++ b/lib/findprog-in.c
@@ -22,7 +22,6 @@
 #include "findprog.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/lib/findprog.c b/lib/findprog.c
index 78551ef044..961277ab95 100644
--- a/lib/findprog.c
+++ b/lib/findprog.c
@@ -21,7 +21,6 @@
 /* Specification.  */
 #include "findprog.h"
 
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/lib/findprog.h b/lib/findprog.h
index e47acc5e47..cba0297deb 100644
--- a/lib/findprog.h
+++ b/lib/findprog.h
@@ -18,8 +18,6 @@
 #ifndef _FINDPROG_H
 #define _FINDPROG_H
 
-#include <stdbool.h>
-
 #ifdef __cplusplus
 extern "C" {
 #endif
diff --git a/lib/fma.c b/lib/fma.c
index e53be24bd9..25a41c485f 100644
--- a/lib/fma.c
+++ b/lib/fma.c
@@ -24,7 +24,6 @@
 #include <math.h>
 
 #include <limits.h>
-#include <stdbool.h>
 #include <stdlib.h>
 
 #if HAVE_FEGETROUND
diff --git a/lib/fnmatch.c b/lib/fnmatch.c
index 45e326902d..5568422549 100644
--- a/lib/fnmatch.c
+++ b/lib/fnmatch.c
@@ -38,7 +38,6 @@
 #include <wchar.h>
 #include <wctype.h>
 #include <stddef.h>
-#include <stdbool.h>
 
 /* We need some of the locale data (the collation sequence information)
    but there is no interface to get this information in general.  Therefore
diff --git a/lib/fopen.c b/lib/fopen.c
index a5b3ae3899..334a7b653a 100644
--- a/lib/fopen.c
+++ b/lib/fopen.c
@@ -39,7 +39,6 @@ orig_fopen (const char *filename, const char *mode)
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <string.h>
 #include <unistd.h>
 #include <sys/types.h>
diff --git a/lib/freadable.h b/lib/freadable.h
index 87590209fe..874fae6c47 100644
--- a/lib/freadable.h
+++ b/lib/freadable.h
@@ -14,7 +14,6 @@
    You should have received a copy of the GNU Lesser General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
 #include <stdio.h>
 
 /* Return true if the stream STREAM supports reading, false if it supports
diff --git a/lib/freading.h b/lib/freading.h
index 74fed227bb..9fa8cd14d9 100644
--- a/lib/freading.h
+++ b/lib/freading.h
@@ -14,7 +14,6 @@
    You should have received a copy of the GNU Lesser General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
 #include <stdio.h>
 
 /* Return true if the stream STREAM is opened read-only, or if the
diff --git a/lib/freopen-safer.c b/lib/freopen-safer.c
index 3bfacee643..8f4e824ef4 100644
--- a/lib/freopen-safer.c
+++ b/lib/freopen-safer.c
@@ -25,7 +25,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <unistd.h>
 
 /* Guarantee that FD is open; all smaller FDs must already be open.
diff --git a/lib/fstrcmp.c b/lib/fstrcmp.c
index 5979f0e7b5..c6ccfed959 100644
--- a/lib/fstrcmp.c
+++ b/lib/fstrcmp.c
@@ -22,7 +22,6 @@
 #include "fstrcmp.h"
 
 #include <string.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdio.h>
 #include <stdint.h>
diff --git a/lib/fsusage.h b/lib/fsusage.h
index 0443d19f92..27085b7b41 100644
--- a/lib/fsusage.h
+++ b/lib/fsusage.h
@@ -22,7 +22,6 @@
 # define FSUSAGE_H_
 
 # include <stdint.h>
-# include <stdbool.h>
 
 struct fs_usage
 {
diff --git a/lib/fts.c b/lib/fts.c
index a7b5b77d79..7778b6b786 100644
--- a/lib/fts.c
+++ b/lib/fts.c
@@ -63,7 +63,6 @@ static char sccsid[] = "@(#)fts.c       8.6 (Berkeley) 8/14/94";
 #include <fcntl.h>
 #include <errno.h>
 #include <stdalign.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/fwritable.h b/lib/fwritable.h
index c2e845e7bd..cf88313509 100644
--- a/lib/fwritable.h
+++ b/lib/fwritable.h
@@ -14,7 +14,6 @@
    You should have received a copy of the GNU Lesser General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
 #include <stdio.h>
 
 /* Return true if the stream STREAM supports writing, false if it supports
diff --git a/lib/fwriteerror.c b/lib/fwriteerror.c
index 372f76c186..a932485481 100644
--- a/lib/fwriteerror.c
+++ b/lib/fwriteerror.c
@@ -21,7 +21,6 @@
 #include "fwriteerror.h"
 
 #include <errno.h>
-#include <stdbool.h>
 
 static int
 do_fwriteerror (FILE *fp, bool ignore_ebadf)
diff --git a/lib/fwriting.h b/lib/fwriting.h
index 0c04cbedc4..9c5d39a744 100644
--- a/lib/fwriting.h
+++ b/lib/fwriting.h
@@ -14,7 +14,6 @@
    You should have received a copy of the GNU Lesser General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
 #include <stdio.h>
 
 /* Return true if the stream STREAM is opened write-only or
diff --git a/lib/gen-uni-tables.c b/lib/gen-uni-tables.c
index 298d9689bc..2c5dbd462c 100644
--- a/lib/gen-uni-tables.c
+++ b/lib/gen-uni-tables.c
@@ -37,7 +37,6 @@
  */
 
 #include <assert.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/lib/getaddrinfo.c b/lib/getaddrinfo.c
index 392289858d..0579315d30 100644
--- a/lib/getaddrinfo.c
+++ b/lib/getaddrinfo.c
@@ -39,8 +39,6 @@
 /* Get snprintf. */
 #include <stdio.h>
 
-#include <stdbool.h>
-
 #include "gettext.h"
 #define _(String) gettext (String)
 #define N_(String) String
diff --git a/lib/getcwd.c b/lib/getcwd.c
index 113332f1c9..e48529723d 100644
--- a/lib/getcwd.c
+++ b/lib/getcwd.c
@@ -28,7 +28,6 @@
 #include <errno.h>
 #include <sys/types.h>
 #include <sys/stat.h>
-#include <stdbool.h>
 #include <stddef.h>
 
 #include <fcntl.h> /* For AT_FDCWD on Solaris 9.  */
diff --git a/lib/getloadavg.c b/lib/getloadavg.c
index 37e8280867..1fddee97af 100644
--- a/lib/getloadavg.c
+++ b/lib/getloadavg.c
@@ -82,7 +82,6 @@
 #include <stdlib.h>
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 
 # include <sys/types.h>
diff --git a/lib/getndelim2.c b/lib/getndelim2.c
index 2611bc2ae1..b0641498f5 100644
--- a/lib/getndelim2.c
+++ b/lib/getndelim2.c
@@ -23,7 +23,6 @@
 
 #include "getndelim2.h"
 
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/getpass.c b/lib/getpass.c
index 063985f9bb..bf2d198b07 100644
--- a/lib/getpass.c
+++ b/lib/getpass.c
@@ -28,8 +28,6 @@
 
 #if !(defined _WIN32 && !defined __CYGWIN__)
 
-# include <stdbool.h>
-
 # if HAVE_DECL___FSETLOCKING && HAVE___FSETLOCKING
 #  if HAVE_STDIO_EXT_H
 #   include <stdio_ext.h>
diff --git a/lib/getrandom.c b/lib/getrandom.c
index e146873093..c05a48167e 100644
--- a/lib/getrandom.c
+++ b/lib/getrandom.c
@@ -23,7 +23,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <unistd.h>
 
 #if defined _WIN32 && ! defined __CYGWIN__
diff --git a/lib/git-merge-changelog.c b/lib/git-merge-changelog.c
index 3ffcc747ab..679c4aac1a 100644
--- a/lib/git-merge-changelog.c
+++ b/lib/git-merge-changelog.c
@@ -157,7 +157,6 @@
 
 #include <getopt.h>
 #include <limits.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/gl_list.h b/lib/gl_list.h
index bf6a2ba4c0..1fd12de4f4 100644
--- a/lib/gl_list.h
+++ b/lib/gl_list.h
@@ -18,7 +18,6 @@
 #ifndef _GL_LIST_H
 #define _GL_LIST_H
 
-#include <stdbool.h>
 #include <stddef.h>
 
 #ifndef _GL_INLINE_HEADER_BEGIN
diff --git a/lib/gl_map.h b/lib/gl_map.h
index a7a37643cf..e6563cd4fa 100644
--- a/lib/gl_map.h
+++ b/lib/gl_map.h
@@ -18,7 +18,6 @@
 #ifndef _GL_MAP_H
 #define _GL_MAP_H
 
-#include <stdbool.h>
 #include <stddef.h>
 
 #ifndef _GL_INLINE_HEADER_BEGIN
diff --git a/lib/gl_omap.h b/lib/gl_omap.h
index 000a34e7a5..67f15c9046 100644
--- a/lib/gl_omap.h
+++ b/lib/gl_omap.h
@@ -18,7 +18,6 @@
 #ifndef _GL_OMAP_H
 #define _GL_OMAP_H
 
-#include <stdbool.h>
 #include <stddef.h>
 
 #ifndef _GL_INLINE_HEADER_BEGIN
diff --git a/lib/gl_oset.h b/lib/gl_oset.h
index 2de391f0ff..0e360bdb2b 100644
--- a/lib/gl_oset.h
+++ b/lib/gl_oset.h
@@ -18,7 +18,6 @@
 #ifndef _GL_OSET_H
 #define _GL_OSET_H
 
-#include <stdbool.h>
 #include <stddef.h>
 
 #ifndef _GL_INLINE_HEADER_BEGIN
diff --git a/lib/gl_set.h b/lib/gl_set.h
index 14b3053e54..c98463a574 100644
--- a/lib/gl_set.h
+++ b/lib/gl_set.h
@@ -18,7 +18,6 @@
 #ifndef _GL_SET_H
 #define _GL_SET_H
 
-#include <stdbool.h>
 #include <stddef.h>
 
 #ifndef _GL_INLINE_HEADER_BEGIN
diff --git a/lib/glob.c b/lib/glob.c
index 57cb3bd1d1..d9206495d5 100644
--- a/lib/glob.c
+++ b/lib/glob.c
@@ -31,7 +31,6 @@
 #include <fcntl.h>
 #include <sys/types.h>
 #include <sys/stat.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdint.h>
 #include <assert.h>
diff --git a/lib/glthread/cond.h b/lib/glthread/cond.h
index 8418719272..1109edb902 100644
--- a/lib/glthread/cond.h
+++ b/lib/glthread/cond.h
@@ -49,7 +49,6 @@
 #define _GLTHREAD_COND_H
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <time.h>
 
diff --git a/lib/hamt.h b/lib/hamt.h
index d685bb6ee7..6cbc7fd7d2 100644
--- a/lib/hamt.h
+++ b/lib/hamt.h
@@ -68,7 +68,6 @@ _GL_INLINE_HEADER_BEGIN
 # define GL_HAMT_THREAD_SAFE 0
 #endif
 
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdint.h>
 
diff --git a/lib/hard-locale.h b/lib/hard-locale.h
index 6066f4ed44..d0fef9b629 100644
--- a/lib/hard-locale.h
+++ b/lib/hard-locale.h
@@ -18,8 +18,6 @@
 #ifndef HARD_LOCALE_H_
 # define HARD_LOCALE_H_ 1
 
-# include <stdbool.h>
-
 /* Return true if the specified CATEGORY of the current locale is hard, i.e.
    different from the C or POSIX locale that has a fixed behavior.
    CATEGORY must be one of the LC_* values, but not LC_ALL.  */
diff --git a/lib/hash-triple.h b/lib/hash-triple.h
index 929995f296..d5f7098594 100644
--- a/lib/hash-triple.h
+++ b/lib/hash-triple.h
@@ -21,7 +21,6 @@
 
 #include <sys/types.h>
 #include <sys/stat.h>
-#include <stdbool.h>
 
 /* Describe a just-created or just-renamed destination file.  */
 struct F_triple
diff --git a/lib/hash.h b/lib/hash.h
index ebfc740777..6bf47ffd0e 100644
--- a/lib/hash.h
+++ b/lib/hash.h
@@ -25,7 +25,6 @@
 # define HASH_H_
 
 # include <stdio.h>
-# include <stdbool.h>
 
 # ifdef __cplusplus
 extern "C" {
diff --git a/lib/human.h b/lib/human.h
index 78fb7180b5..34cedff4f2 100644
--- a/lib/human.h
+++ b/lib/human.h
@@ -21,7 +21,6 @@
 # define HUMAN_H_ 1
 
 # include <limits.h>
-# include <stdbool.h>
 # include <stdint.h>
 # include <unistd.h>
 
diff --git a/lib/i-ring.h b/lib/i-ring.h
index 58ba72f401..ec27d5a3f4 100644
--- a/lib/i-ring.h
+++ b/lib/i-ring.h
@@ -14,7 +14,6 @@
    You should have received a copy of the GNU Lesser General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
 #include "verify.h"
 
 enum { I_RING_SIZE = 4 };
diff --git a/lib/isapipe.c b/lib/isapipe.c
index 467ed00ca9..163d6d6cf8 100644
--- a/lib/isapipe.c
+++ b/lib/isapipe.c
@@ -53,7 +53,6 @@ isapipe (int fd)
 #else
 /* Unix platforms.  */
 
-# include <stdbool.h>
 # include <sys/types.h>
 # include <sys/stat.h>
 # include <unistd.h>
diff --git a/lib/javacomp.h b/lib/javacomp.h
index 0f5861b363..cf1222ed9b 100644
--- a/lib/javacomp.h
+++ b/lib/javacomp.h
@@ -18,8 +18,6 @@
 #ifndef _JAVACOMP_H
 #define _JAVACOMP_H
 
-#include <stdbool.h>
-
 /* Compile a Java source file to bytecode.
    java_sources is an array of source file names.
    classpaths is a list of pathnames to be prepended to the CLASSPATH.
diff --git a/lib/javaexec.h b/lib/javaexec.h
index 674d3427a7..bae2b005a1 100644
--- a/lib/javaexec.h
+++ b/lib/javaexec.h
@@ -18,8 +18,6 @@
 #ifndef _JAVAEXEC_H
 #define _JAVAEXEC_H
 
-#include <stdbool.h>
-
 typedef bool execute_fn (const char *progname,
                          const char *prog_path, const char * const *prog_argv,
                          void *private_data);
diff --git a/lib/javaversion.c b/lib/javaversion.c
index ca247e6535..b24fe2b5a0 100644
--- a/lib/javaversion.c
+++ b/lib/javaversion.c
@@ -21,7 +21,6 @@
 #include "javaversion.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 
diff --git a/lib/lchown.c b/lib/lchown.c
index 8b0d871a27..a6ea1fab4b 100644
--- a/lib/lchown.c
+++ b/lib/lchown.c
@@ -23,7 +23,6 @@
 #include <unistd.h>
 
 #include <errno.h>
-#include <stdbool.h>
 #include <string.h>
 #include <sys/stat.h>
 
diff --git a/lib/localeinfo.h b/lib/localeinfo.h
index ac235fccae..f117374a73 100644
--- a/lib/localeinfo.h
+++ b/lib/localeinfo.h
@@ -20,7 +20,6 @@
 /* Written by Paul Eggert.  */
 
 #include <limits.h>
-#include <stdbool.h>
 #include <wchar.h>
 
 struct localeinfo
diff --git a/lib/localename.c b/lib/localename.c
index 446fc0333d..3a1d96ad56 100644
--- a/lib/localename.c
+++ b/lib/localename.c
@@ -24,7 +24,6 @@
 #include "localename.h"
 
 #include <limits.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 #include <locale.h>
diff --git a/lib/long-options.h b/lib/long-options.h
index 4ec42cc942..a0f37025eb 100644
--- a/lib/long-options.h
+++ b/lib/long-options.h
@@ -20,8 +20,6 @@
 #ifndef LONG_OPTIONS_H_
 # define LONG_OPTIONS_H_ 1
 
-# include <stdbool.h>
-
 void parse_long_options (int _argc,
                          char **_argv,
                          const char *_command_name,
diff --git a/lib/malloc/dynarray.h b/lib/malloc/dynarray.h
index f16fd950df..df1aa4167d 100644
--- a/lib/malloc/dynarray.h
+++ b/lib/malloc/dynarray.h
@@ -94,7 +94,6 @@
 #ifndef _DYNARRAY_H
 #define _DYNARRAY_H
 
-#include <stdbool.h>
 #include <stddef.h>
 #include <string.h>
 
diff --git a/lib/mbchar.h b/lib/mbchar.h
index 9aeb04413c..5ca8df61fe 100644
--- a/lib/mbchar.h
+++ b/lib/mbchar.h
@@ -144,7 +144,6 @@
 #ifndef _MBCHAR_H
 #define _MBCHAR_H 1
 
-#include <stdbool.h>
 #include <string.h>
 #include <wchar.h>
 #include <wctype.h>
diff --git a/lib/mbfile.h b/lib/mbfile.h
index bfe8706246..89bfc3e746 100644
--- a/lib/mbfile.h
+++ b/lib/mbfile.h
@@ -48,7 +48,6 @@
 #define _MBFILE_H 1
 
 #include <assert.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <string.h>
 #include <wchar.h>
diff --git a/lib/mbiter.h b/lib/mbiter.h
index 031fa92fbf..f30a5406bb 100644
--- a/lib/mbiter.h
+++ b/lib/mbiter.h
@@ -83,7 +83,6 @@
 #define _MBITER_H 1
 
 #include <assert.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <string.h>
 #include <wchar.h>
diff --git a/lib/mbmemcasecoll.h b/lib/mbmemcasecoll.h
index b8df2058c8..50f0040f17 100644
--- a/lib/mbmemcasecoll.h
+++ b/lib/mbmemcasecoll.h
@@ -19,7 +19,6 @@
 #ifndef MBMEMCASECOLL_H
 #define MBMEMCASECOLL_H
 
-#include <stdbool.h>
 #include <stddef.h>
 
 #ifdef __cplusplus
diff --git a/lib/mbscasestr.c b/lib/mbscasestr.c
index 9d4c3ae468..e5b3263eb3 100644
--- a/lib/mbscasestr.c
+++ b/lib/mbscasestr.c
@@ -21,7 +21,6 @@
 #include <string.h>
 
 #include <ctype.h>
-#include <stdbool.h>
 #include <stddef.h>  /* for NULL, in case a nonstandard string.h lacks it */
 #include <stdlib.h>
 
diff --git a/lib/mbsstr.c b/lib/mbsstr.c
index f9ce4eeca8..ff7ff17d76 100644
--- a/lib/mbsstr.c
+++ b/lib/mbsstr.c
@@ -20,7 +20,6 @@
 /* Specification.  */
 #include <string.h>
 
-#include <stdbool.h>
 #include <stddef.h>  /* for NULL, in case a nonstandard string.h lacks it */
 #include <stdlib.h>
 
diff --git a/lib/mbuiter.h b/lib/mbuiter.h
index f197bd1c2e..1a48fcfa5c 100644
--- a/lib/mbuiter.h
+++ b/lib/mbuiter.h
@@ -90,7 +90,6 @@
 #define _MBUITER_H 1
 
 #include <assert.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/mkdir-p.h b/lib/mkdir-p.h
index f8a4b5d4b9..90bd59f37d 100644
--- a/lib/mkdir-p.h
+++ b/lib/mkdir-p.h
@@ -18,7 +18,6 @@
 
 /* Written by Paul Eggert, David MacKenzie, and Jim Meyering.  */
 
-#include <stdbool.h>
 #include <sys/types.h>
 
 struct savewd;
diff --git a/lib/modechange.h b/lib/modechange.h
index 3982be16b2..d1bcd8f13e 100644
--- a/lib/modechange.h
+++ b/lib/modechange.h
@@ -19,7 +19,6 @@
 #if ! defined MODECHANGE_H_
 # define MODECHANGE_H_
 
-# include <stdbool.h>
 # include <stdlib.h>
 # include <sys/types.h>
 
diff --git a/lib/mountlist.h b/lib/mountlist.h
index 6edac1216f..e24ebbe0dc 100644
--- a/lib/mountlist.h
+++ b/lib/mountlist.h
@@ -19,7 +19,6 @@
 #ifndef MOUNTLIST_H_
 # define MOUNTLIST_H_
 
-# include <stdbool.h>
 # include <sys/types.h>
 
 /* A mount table entry. */
diff --git a/lib/nanosleep.c b/lib/nanosleep.c
index 446794edc0..78e612d4b1 100644
--- a/lib/nanosleep.c
+++ b/lib/nanosleep.c
@@ -25,7 +25,6 @@
 #include "intprops.h"
 #include "verify.h"
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <sys/types.h>
 #include <sys/select.h>
diff --git a/lib/nonblocking.h b/lib/nonblocking.h
index 8e00fd74b0..0cb6f6a584 100644
--- a/lib/nonblocking.h
+++ b/lib/nonblocking.h
@@ -17,8 +17,6 @@
 #ifndef _NONBLOCKING_H
 #define _NONBLOCKING_H
 
-#include <stdbool.h>
-
 /* Non-blocking I/O is an I/O mode by which read(), write() calls avoid
    blocking the current thread.  When non-blocking is enabled:
    - A read() call returns -1 with errno set to EAGAIN when no data or EOF
diff --git a/lib/nstrftime.c b/lib/nstrftime.c
index c1dd554247..37034eb9fb 100644
--- a/lib/nstrftime.c
+++ b/lib/nstrftime.c
@@ -65,7 +65,6 @@ extern char *tzname[];
 #include <stddef.h>
 #include <stdlib.h>
 #include <string.h>
-#include <stdbool.h>
 
 #include "attribute.h"
 #include <intprops.h>
diff --git a/lib/openat.c b/lib/openat.c
index 52aab19d27..a78d0456ed 100644
--- a/lib/openat.c
+++ b/lib/openat.c
@@ -44,7 +44,6 @@ orig_openat (int fd, char const *filename, int flags, mode_t mode)
 #include "cloexec.h"
 
 #include <stdarg.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/openat.h b/lib/openat.h
index 56919ef8dc..c2f64ff50e 100644
--- a/lib/openat.h
+++ b/lib/openat.h
@@ -24,7 +24,6 @@
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <unistd.h>
-#include <stdbool.h>
 
 #ifndef _GL_INLINE_HEADER_BEGIN
  #error "Please include config.h first."
diff --git a/lib/os2-spawn.c b/lib/os2-spawn.c
index b51c09877b..bfedfa1cc3 100644
--- a/lib/os2-spawn.c
+++ b/lib/os2-spawn.c
@@ -23,7 +23,6 @@
 /* Get _open_osfhandle().  */
 #include <io.h>
 
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/lib/parse-datetime.h b/lib/parse-datetime.h
index c333abc037..ae88b2183b 100644
--- a/lib/parse-datetime.h
+++ b/lib/parse-datetime.h
@@ -16,7 +16,6 @@
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
 #include <time.h>
 
 bool parse_datetime (struct timespec *restrict,
diff --git a/lib/pipe-filter-aux.c b/lib/pipe-filter-aux.c
index 8f69a5b2d0..8827d8698e 100644
--- a/lib/pipe-filter-aux.c
+++ b/lib/pipe-filter-aux.c
@@ -22,7 +22,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/lib/pipe-filter-gi.c b/lib/pipe-filter-gi.c
index 2b2e54228d..ca7d763616 100644
--- a/lib/pipe-filter-gi.c
+++ b/lib/pipe-filter-gi.c
@@ -22,7 +22,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/lib/pipe-filter-ii.c b/lib/pipe-filter-ii.c
index 06729584f0..f8332b134d 100644
--- a/lib/pipe-filter-ii.c
+++ b/lib/pipe-filter-ii.c
@@ -21,7 +21,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/lib/pipe-filter.h b/lib/pipe-filter.h
index 4adc23bd05..da122d51bb 100644
--- a/lib/pipe-filter.h
+++ b/lib/pipe-filter.h
@@ -19,10 +19,8 @@
 #ifndef _PIPE_FILTER_H
 #define _PIPE_FILTER_H
 
-#include <stdbool.h>
 #include <stddef.h>
 
-
 #ifdef __cplusplus
 extern "C" {
 #endif
diff --git a/lib/posixtm.h b/lib/posixtm.h
index bb8a6bdbc3..3ff026a4b8 100644
--- a/lib/posixtm.h
+++ b/lib/posixtm.h
@@ -21,7 +21,6 @@
 #ifndef POSIXTM_H_
 # define POSIXTM_H_
 
-# include <stdbool.h>
 # include <time.h>
 
 /* POSIX Date Syntax flags.  */
diff --git a/lib/priv-set.c b/lib/priv-set.c
index 7a7455b09e..f0487f429d 100644
--- a/lib/priv-set.c
+++ b/lib/priv-set.c
@@ -26,7 +26,6 @@
 #if HAVE_GETPPRIV && HAVE_PRIV_H
 
 # include <errno.h>
-# include <stdbool.h>
 # include <priv.h>
 
 /* Holds a (cached) copy of the effective set.  */
diff --git a/lib/progreloc.c b/lib/progreloc.c
index 8bb2576910..c9e3e663f6 100644
--- a/lib/progreloc.c
+++ b/lib/progreloc.c
@@ -23,7 +23,6 @@
 #include "progname.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/propername.c b/lib/propername.c
index eaef4f2700..6c9d7a5a3d 100644
--- a/lib/propername.c
+++ b/lib/propername.c
@@ -27,7 +27,6 @@
 #include "propername.h"
 
 #include <ctype.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/pthread-spin.c b/lib/pthread-spin.c
index d4d1da001e..d110749655 100644
--- a/lib/pthread-spin.c
+++ b/lib/pthread-spin.c
@@ -21,8 +21,6 @@
 /* Specification.  */
 #include <pthread.h>
 
-#include <stdbool.h>
-
 #if (defined _WIN32 && ! defined __CYGWIN__) && USE_WINDOWS_THREADS
 # include "windows-spin.h"
 #endif
diff --git a/lib/quotearg.c b/lib/quotearg.c
index 9180d9ab05..ac339991a2 100644
--- a/lib/quotearg.c
+++ b/lib/quotearg.c
@@ -38,7 +38,6 @@
 #include <ctype.h>
 #include <errno.h>
 #include <limits.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/readtokens.c b/lib/readtokens.c
index f165580cca..71f6657fde 100644
--- a/lib/readtokens.c
+++ b/lib/readtokens.c
@@ -30,7 +30,6 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <stdbool.h>
 
 #include "xalloc.h"
 
diff --git a/lib/readtokens0.h b/lib/readtokens0.h
index 2bfbb02cf2..0b0fc92ed2 100644
--- a/lib/readtokens0.h
+++ b/lib/readtokens0.h
@@ -22,7 +22,6 @@
 
 # include <stdio.h>
 # include <sys/types.h>
-# include <stdbool.h>
 # include "obstack.h"
 
 struct Tokens
diff --git a/lib/readutmp.c b/lib/readutmp.c
index 1b6f843d9a..49c9d6d374 100644
--- a/lib/readutmp.c
+++ b/lib/readutmp.c
@@ -27,7 +27,6 @@
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <string.h>
 #include <stdlib.h>
 #include <stdint.h>
diff --git a/lib/regex-quote.h b/lib/regex-quote.h
index 902735bfc9..0253cdfb45 100644
--- a/lib/regex-quote.h
+++ b/lib/regex-quote.h
@@ -18,10 +18,8 @@
 #ifndef _REGEX_QUOTE_H
 #define _REGEX_QUOTE_H
 
-#include <stdbool.h>
 #include <stdlib.h>
 
-
 /* Specifies a quotation task for converting a fixed string to a regular
    expression pattern.  */
 struct regex_quote_spec
diff --git a/lib/regex_internal.h b/lib/regex_internal.h
index 57a455b1f4..784d2d4586 100644
--- a/lib/regex_internal.h
+++ b/lib/regex_internal.h
@@ -29,7 +29,6 @@
 #include <locale.h>
 #include <wchar.h>
 #include <wctype.h>
-#include <stdbool.h>
 #include <stdint.h>
 
 #ifndef _LIBC
diff --git a/lib/relocwrapper.c b/lib/relocwrapper.c
index ff0ad41995..3ec8b2888b 100644
--- a/lib/relocwrapper.c
+++ b/lib/relocwrapper.c
@@ -29,10 +29,10 @@
           -> readlink
              -> stat
        -> canonicalize-lgpl
+          -> c-bool
           -> libc-config
           -> errno
           -> fcntl-h
-          -> stdbool
           -> sys_stat
           -> unistd
           -> eloop-threshold
diff --git a/lib/rename.c b/lib/rename.c
index 119abe5c26..a525873170 100644
--- a/lib/rename.c
+++ b/lib/rename.c
@@ -29,7 +29,6 @@
    existing files.  */
 
 # include <errno.h>
-# include <stdbool.h>
 # include <stdlib.h>
 # include <sys/stat.h>
 # include <unistd.h>
diff --git a/lib/renameatu.c b/lib/renameatu.c
index 7ba186cae7..0c9cdeb95f 100644
--- a/lib/renameatu.c
+++ b/lib/renameatu.c
@@ -38,7 +38,6 @@ errno_fail (int e)
 
 #if HAVE_RENAMEAT
 
-# include <stdbool.h>
 # include <stdlib.h>
 # include <string.h>
 
diff --git a/lib/rpmatch.c b/lib/rpmatch.c
index 01eab24dbb..fbdcb0305c 100644
--- a/lib/rpmatch.c
+++ b/lib/rpmatch.c
@@ -22,7 +22,6 @@
 /* Specification.  */
 #include <stdlib.h>
 
-#include <stdbool.h>
 #include <stddef.h>
 
 #if ENABLE_NLS
diff --git a/lib/same.c b/lib/same.c
index b68b995b48..858449a5a9 100644
--- a/lib/same.c
+++ b/lib/same.c
@@ -20,7 +20,6 @@
 #include <config.h>
 
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <unistd.h>
 #include <stdlib.h>
diff --git a/lib/same.h b/lib/same.h
index 6066850226..caf592f985 100644
--- a/lib/same.h
+++ b/lib/same.h
@@ -18,8 +18,6 @@
 #ifndef SAME_H_
 # define SAME_H_ 1
 
-# include <stdbool.h>
-
 bool same_name (const char *source, const char *dest);
 bool same_nameat (int, char const *, int, char const *);
 
diff --git a/lib/save-cwd.c b/lib/save-cwd.c
index ea487a40dd..afa75e176e 100644
--- a/lib/save-cwd.c
+++ b/lib/save-cwd.c
@@ -24,7 +24,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 
diff --git a/lib/savewd.c b/lib/savewd.c
index 804924a945..dbb7ef2b47 100644
--- a/lib/savewd.c
+++ b/lib/savewd.c
@@ -26,7 +26,6 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <sys/types.h>
 #include <sys/wait.h>
diff --git a/lib/savewd.h b/lib/savewd.h
index 80cd280287..22242a30a5 100644
--- a/lib/savewd.h
+++ b/lib/savewd.h
@@ -20,7 +20,6 @@
 #ifndef SAVEWD_H
 # define SAVEWD_H 1
 
-#include <stdbool.h>
 #include <sys/types.h>
 
 #ifndef _GL_INLINE_HEADER_BEGIN
diff --git a/lib/spawn-pipe.h b/lib/spawn-pipe.h
index 9ab1ea8433..d25988051f 100644
--- a/lib/spawn-pipe.h
+++ b/lib/spawn-pipe.h
@@ -23,8 +23,6 @@
 #include <unistd.h>
 #include <sys/types.h>
 
-#include <stdbool.h>
-
 
 #ifdef __cplusplus
 extern "C" {
diff --git a/lib/spawni.c b/lib/spawni.c
index 9bca2002b6..36b9c727dc 100644
--- a/lib/spawni.c
+++ b/lib/spawni.c
@@ -93,7 +93,6 @@
 # define WIN32_LEAN_AND_MEAN
 # include <windows.h>
 
-# include <stdbool.h>
 # include <stdio.h>
 
 # include "filename.h"
diff --git a/lib/stack.h b/lib/stack.h
index 28b9d7a542..18e23fdaf9 100644
--- a/lib/stack.h
+++ b/lib/stack.h
@@ -53,7 +53,6 @@
    After including this file, these names will be undefined.
 
    Before including this file, you also need to include:
-     #include <stdbool.h>
      #include <stdlib.h>
      #include "assure.h"
      #include "xalloc.h"
diff --git a/lib/stat.c b/lib/stat.c
index 574489ac71..cdcc33165f 100644
--- a/lib/stat.c
+++ b/lib/stat.c
@@ -55,7 +55,6 @@ orig_stat (const char *filename, struct stat *buf)
 
 #include <errno.h>
 #include <limits.h>
-#include <stdbool.h>
 #include <string.h>
 #include "filename.h"
 #include "malloca.h"
diff --git a/lib/stdckdint.in.h b/lib/stdckdint.in.h
index 90fa62e596..762d3fdb79 100644
--- a/lib/stdckdint.in.h
+++ b/lib/stdckdint.in.h
@@ -20,8 +20,6 @@
 
 #include "intprops-internal.h"
 
-#include <stdbool.h>
-
 /* Store into *R the low-order bits of A + B, A - B, A * B, respectively.
    Return 1 if the result overflows, 0 otherwise.
    A, B, and *R can have any integer type other than char, bool, a
diff --git a/lib/strcasestr.c b/lib/strcasestr.c
index b36f40919d..e8d6084b06 100644
--- a/lib/strcasestr.c
+++ b/lib/strcasestr.c
@@ -21,7 +21,6 @@
 #include <string.h>
 
 #include <ctype.h>
-#include <stdbool.h>
 #include <strings.h>
 
 #define TOLOWER(Ch) (isupper (Ch) ? tolower (Ch) : (Ch))
diff --git a/lib/strfmon_l.c b/lib/strfmon_l.c
index 2ce17e566c..99996ceb90 100644
--- a/lib/strfmon_l.c
+++ b/lib/strfmon_l.c
@@ -22,7 +22,6 @@
 #include <errno.h>
 #include <locale.h>
 #include <stdarg.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 
diff --git a/lib/striconveh.c b/lib/striconveh.c
index 5b60a7e0af..01b4e327ef 100644
--- a/lib/striconveh.c
+++ b/lib/striconveh.c
@@ -21,7 +21,6 @@
 #include "striconveh.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 
diff --git a/lib/striconveha.h b/lib/striconveha.h
index fe7b42430f..4a4426fe77 100644
--- a/lib/striconveha.h
+++ b/lib/striconveha.h
@@ -18,7 +18,6 @@
 #ifndef _STRICONVEHA_H
 #define _STRICONVEHA_H
 
-#include <stdbool.h>
 #include <stdlib.h>
 
 #include "iconveh.h"
diff --git a/lib/string-buffer.h b/lib/string-buffer.h
index 4cb1e29957..d988e1e501 100644
--- a/lib/string-buffer.h
+++ b/lib/string-buffer.h
@@ -20,7 +20,6 @@
 #define _STRING_BUFFER_H
 
 #include <stdarg.h>
-#include <stdbool.h>
 #include <stdlib.h>
 
 #include "attribute.h"
diff --git a/lib/strptime.c b/lib/strptime.c
index 27b3fb6a9c..fd9ae8892a 100644
--- a/lib/strptime.c
+++ b/lib/strptime.c
@@ -29,9 +29,9 @@
 #include <limits.h>
 #include <string.h>
 #include <strings.h>
-#include <stdbool.h>
 
 #ifdef _LIBC
+# include <stdbool.h>
 # include "../locale/localeinfo.h"
 #endif
 
diff --git a/lib/strstr.c b/lib/strstr.c
index 6236915966..65bf21b717 100644
--- a/lib/strstr.c
+++ b/lib/strstr.c
@@ -24,8 +24,6 @@
 /* Specification of strstr.  */
 #include <string.h>
 
-#include <stdbool.h>
-
 #define RETURN_TYPE char *
 #define AVAILABLE(h, h_l, j, n_l)                       \
   (!memchr ((h) + (h_l), '\0', (j) + (n_l) - (h_l))     \
diff --git a/lib/strtod.c b/lib/strtod.c
index 9b3a1422a8..a2eada590f 100644
--- a/lib/strtod.c
+++ b/lib/strtod.c
@@ -27,7 +27,6 @@
 #include <limits.h>     /* LONG_{MIN,MAX} */
 #include <locale.h>     /* localeconv() */
 #include <math.h>       /* NAN */
-#include <stdbool.h>
 #include <stdio.h>      /* sprintf() */
 #include <string.h>     /* strdup() */
 #if HAVE_NL_LANGINFO
diff --git a/lib/supersede.h b/lib/supersede.h
index f7ab9d5496..27eb7a13c4 100644
--- a/lib/supersede.h
+++ b/lib/supersede.h
@@ -20,7 +20,6 @@
 #ifndef _GL_SUPERSEDE_H
 #define _GL_SUPERSEDE_H
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <sys/types.h>
 
diff --git a/lib/system-quote.c b/lib/system-quote.c
index 7ac844830d..02d20b1823 100644
--- a/lib/system-quote.c
+++ b/lib/system-quote.c
@@ -20,7 +20,6 @@
 /* Specification.  */
 #include "system-quote.h"
 
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 
diff --git a/lib/tempname.c b/lib/tempname.c
index 11b4796b34..dbff638f70 100644
--- a/lib/tempname.c
+++ b/lib/tempname.c
@@ -20,7 +20,6 @@
 # include "tempname.h"
 #endif
 
-#include <stdbool.h>
 #include <errno.h>
 
 #include <stdio.h>
diff --git a/lib/term-style-control.c b/lib/term-style-control.c
index 37f0f4b9da..64a0e4e075 100644
--- a/lib/term-style-control.c
+++ b/lib/term-style-control.c
@@ -25,7 +25,6 @@
 
 #include <errno.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/lib/term-style-control.h b/lib/term-style-control.h
index 539fa795af..28623aacf5 100644
--- a/lib/term-style-control.h
+++ b/lib/term-style-control.h
@@ -18,8 +18,6 @@
 #ifndef _TERM_STYLE_CONTROL_H
 #define _TERM_STYLE_CONTROL_H
 
-#include <stdbool.h>
-
 /* The user of this file will define a macro 'term_style_user_data', such that
    'struct term_style_user_data' is a user-defined struct.  */
 
diff --git a/lib/textstyle.in.h b/lib/textstyle.in.h
index 60015bdb71..1983183b02 100644
--- a/lib/textstyle.in.h
+++ b/lib/textstyle.in.h
@@ -32,7 +32,6 @@
 
 #include <errno.h>
 #include <stdarg.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/lib/time_rz.c b/lib/time_rz.c
index 1a91d3778e..601ce5950e 100644
--- a/lib/time_rz.c
+++ b/lib/time_rz.c
@@ -27,7 +27,6 @@
 #include <time.h>
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/tmpdir.c b/lib/tmpdir.c
index 3e47875b76..6d9a1f23d3 100644
--- a/lib/tmpdir.c
+++ b/lib/tmpdir.c
@@ -22,7 +22,6 @@
 /* Specification.  */
 #include "tmpdir.h"
 
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 
diff --git a/lib/tmpdir.h b/lib/tmpdir.h
index ec14ee14cb..f667f4a868 100644
--- a/lib/tmpdir.h
+++ b/lib/tmpdir.h
@@ -14,7 +14,6 @@
    You should have received a copy of the GNU Lesser General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
 #include <stddef.h>
 
 /* Path search algorithm, for tmpnam, tmpfile, etc.  If DIR is
diff --git a/lib/tmpfile.c b/lib/tmpfile.c
index dd9cf821a2..fadee566cc 100644
--- a/lib/tmpfile.c
+++ b/lib/tmpfile.c
@@ -22,7 +22,6 @@
 #include <stdio.h>
 
 #include <errno.h>
-#include <stdbool.h>
 
 #if defined _WIN32 && ! defined __CYGWIN__
 /* A native Windows platform.  */
diff --git a/lib/unicase.in.h b/lib/unicase.in.h
index 9bcc79edd8..5317cd3dd8 100644
--- a/lib/unicase.in.h
+++ b/lib/unicase.in.h
@@ -27,9 +27,6 @@
 
 #include "unitypes.h"
 
-/* Get bool.  */
-#include <stdbool.h>
-
 /* Get size_t.  */
 #include <stddef.h>
 
diff --git a/lib/unicase/caseprop.h b/lib/unicase/caseprop.h
index 3223ee4d7a..e599a3f1ce 100644
--- a/lib/unicase/caseprop.h
+++ b/lib/unicase/caseprop.h
@@ -23,7 +23,6 @@
    License and of the GNU General Public License along with this
    program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
 #include "unitypes.h"
 
 /* Determine whether a character is "cased" according to the Unicode Standard,
diff --git a/lib/unicase/invariant.h b/lib/unicase/invariant.h
index 67a13b70f4..c8b9319bba 100644
--- a/lib/unicase/invariant.h
+++ b/lib/unicase/invariant.h
@@ -23,7 +23,6 @@
    License and of the GNU General Public License along with this
    program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
 #include <stddef.h>
 
 #include "unitypes.h"
diff --git a/lib/unicase/u16-casemap.c b/lib/unicase/u16-casemap.c
index b79b5b3246..ecbaa82c28 100644
--- a/lib/unicase/u16-casemap.c
+++ b/lib/unicase/u16-casemap.c
@@ -29,7 +29,6 @@
 #include "unicasemap.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 
 #include "unistr.h"
diff --git a/lib/unicase/u16-ct-totitle.c b/lib/unicase/u16-ct-totitle.c
index bda283d3de..ce52c70469 100644
--- a/lib/unicase/u16-ct-totitle.c
+++ b/lib/unicase/u16-ct-totitle.c
@@ -29,7 +29,6 @@
 #include "unicase.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 
diff --git a/lib/unicase/u16-is-invariant.c b/lib/unicase/u16-is-invariant.c
index 6d95b197a8..a465657672 100644
--- a/lib/unicase/u16-is-invariant.c
+++ b/lib/unicase/u16-is-invariant.c
@@ -29,7 +29,6 @@
 #include "unicase/invariant.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 
 #include "uninorm.h"
diff --git a/lib/unicase/u32-casemap.c b/lib/unicase/u32-casemap.c
index a56efeb95f..280bac9ba1 100644
--- a/lib/unicase/u32-casemap.c
+++ b/lib/unicase/u32-casemap.c
@@ -29,7 +29,6 @@
 #include "unicasemap.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 
 #include "unistr.h"
diff --git a/lib/unicase/u32-ct-totitle.c b/lib/unicase/u32-ct-totitle.c
index 0bd168305b..9786d35238 100644
--- a/lib/unicase/u32-ct-totitle.c
+++ b/lib/unicase/u32-ct-totitle.c
@@ -29,7 +29,6 @@
 #include "unicase.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 
diff --git a/lib/unicase/u32-is-invariant.c b/lib/unicase/u32-is-invariant.c
index 3a28ff0950..f46b2d0e01 100644
--- a/lib/unicase/u32-is-invariant.c
+++ b/lib/unicase/u32-is-invariant.c
@@ -29,7 +29,6 @@
 #include "unicase/invariant.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 
 #include "uninorm.h"
diff --git a/lib/unicase/u8-casemap.c b/lib/unicase/u8-casemap.c
index fb5a66cff5..1dbac0bfff 100644
--- a/lib/unicase/u8-casemap.c
+++ b/lib/unicase/u8-casemap.c
@@ -29,7 +29,6 @@
 #include "unicasemap.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 
 #include "unistr.h"
diff --git a/lib/unicase/u8-ct-totitle.c b/lib/unicase/u8-ct-totitle.c
index c51f4dad1c..787d5ab8b4 100644
--- a/lib/unicase/u8-ct-totitle.c
+++ b/lib/unicase/u8-ct-totitle.c
@@ -29,7 +29,6 @@
 #include "unicase.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 
diff --git a/lib/unicase/u8-is-invariant.c b/lib/unicase/u8-is-invariant.c
index dd9fa63d22..57c72a5973 100644
--- a/lib/unicase/u8-is-invariant.c
+++ b/lib/unicase/u8-is-invariant.c
@@ -29,7 +29,6 @@
 #include "unicase/invariant.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 
 #include "uninorm.h"
diff --git a/lib/unictype.in.h b/lib/unictype.in.h
index 2f0efefca8..de6a191d87 100644
--- a/lib/unictype.in.h
+++ b/lib/unictype.in.h
@@ -19,9 +19,6 @@
 
 #include "unitypes.h"
 
-/* Get bool.  */
-#include <stdbool.h>
-
 /* Get size_t.  */
 #include <stddef.h>
 
diff --git a/lib/unigbrk.in.h b/lib/unigbrk.in.h
index f1b60e17b9..7fbc2a0d57 100644
--- a/lib/unigbrk.in.h
+++ b/lib/unigbrk.in.h
@@ -26,9 +26,6 @@
 #ifndef _UNIGBRK_H
 #define _UNIGBRK_H
 
-/* Get bool.  */
-#include <stdbool.h>
-
 /* Get size_t. */
 #include <stddef.h>
 
diff --git a/lib/unigbrk/u16-grapheme-breaks.c b/lib/unigbrk/u16-grapheme-breaks.c
index 850f6affa9..439397471d 100644
--- a/lib/unigbrk/u16-grapheme-breaks.c
+++ b/lib/unigbrk/u16-grapheme-breaks.c
@@ -28,7 +28,6 @@
 /* Specification.  */
 #include "unigbrk.h"
 
-#include <stdbool.h>
 #include <string.h>
 
 #include "unictype.h"
diff --git a/lib/unigbrk/u32-grapheme-breaks.c b/lib/unigbrk/u32-grapheme-breaks.c
index ecb0e3f5c6..927955845d 100644
--- a/lib/unigbrk/u32-grapheme-breaks.c
+++ b/lib/unigbrk/u32-grapheme-breaks.c
@@ -28,7 +28,6 @@
 /* Specification.  */
 #include "unigbrk.h"
 
-#include <stdbool.h>
 #include <string.h>
 
 #include "unictype.h"
diff --git a/lib/unigbrk/u8-grapheme-breaks.c b/lib/unigbrk/u8-grapheme-breaks.c
index dfbf3f1ef9..b21ba262ba 100644
--- a/lib/unigbrk/u8-grapheme-breaks.c
+++ b/lib/unigbrk/u8-grapheme-breaks.c
@@ -29,7 +29,6 @@
 /* Specification.  */
 #include "unigbrk.h"
 
-#include <stdbool.h>
 #include <string.h>
 
 #include "unictype.h"
diff --git a/lib/unigbrk/uc-grapheme-breaks.c b/lib/unigbrk/uc-grapheme-breaks.c
index 9c7c6f78ef..73130a5969 100644
--- a/lib/unigbrk/uc-grapheme-breaks.c
+++ b/lib/unigbrk/uc-grapheme-breaks.c
@@ -28,7 +28,6 @@
 /* Specification.  */
 #include "unigbrk.h"
 
-#include <stdbool.h>
 #include <string.h>
 
 #include "unictype.h"
diff --git a/lib/uniname/uniname.c b/lib/uniname/uniname.c
index 9842bec292..000b00fe26 100644
--- a/lib/uniname/uniname.c
+++ b/lib/uniname/uniname.c
@@ -28,7 +28,6 @@
 #include "uniname.h"
 
 #include <assert.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdio.h>
 #include <string.h>
diff --git a/lib/unistr.in.h b/lib/unistr.in.h
index 4d48751558..40c7929575 100644
--- a/lib/unistr.in.h
+++ b/lib/unistr.in.h
@@ -19,9 +19,6 @@
 
 #include "unitypes.h"
 
-/* Get bool.  */
-#include <stdbool.h>
-
 /* Get size_t, ptrdiff_t.  */
 #include <stddef.h>
 
diff --git a/lib/unlinkdir.h b/lib/unlinkdir.h
index 5086b9d5ad..8cf84b7b4c 100644
--- a/lib/unlinkdir.h
+++ b/lib/unlinkdir.h
@@ -17,8 +17,6 @@
 
 /* Written by Paul Eggert and Jim Meyering.  */
 
-#include <stdbool.h>
-
 #if UNLINK_CANNOT_UNLINK_DIR
 # define cannot_unlink_dir() true
 #else
diff --git a/lib/userspec.h b/lib/userspec.h
index 7d5d063e7e..2f790f7c84 100644
--- a/lib/userspec.h
+++ b/lib/userspec.h
@@ -19,7 +19,6 @@
 #ifndef USERSPEC_H
 # define USERSPEC_H 1
 
-# include <stdbool.h>
 # include <sys/types.h>
 
 char const *
diff --git a/lib/utime.c b/lib/utime.c
index 799be0faab..e8aae9ef9f 100644
--- a/lib/utime.c
+++ b/lib/utime.c
@@ -24,7 +24,6 @@
 #if defined _WIN32 && ! defined __CYGWIN__
 
 # include <errno.h>
-# include <stdbool.h>
 # include <windows.h>
 # include "filename.h"
 # include "malloca.h"
diff --git a/lib/utimecmp.c b/lib/utimecmp.c
index 3c00128724..7312ee0b88 100644
--- a/lib/utimecmp.c
+++ b/lib/utimecmp.c
@@ -23,7 +23,6 @@
 
 #include <fcntl.h>
 #include <limits.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdlib.h>
 #include <sys/stat.h>
diff --git a/lib/utimens.c b/lib/utimens.c
index 2fa1251850..23b9180935 100644
--- a/lib/utimens.c
+++ b/lib/utimens.c
@@ -26,7 +26,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <string.h>
 #include <sys/stat.h>
 #include <sys/time.h>
diff --git a/lib/wait-process.h b/lib/wait-process.h
index 61bdf13031..008eaa9ca3 100644
--- a/lib/wait-process.h
+++ b/lib/wait-process.h
@@ -23,8 +23,6 @@
 #include <unistd.h>
 #include <sys/types.h>
 
-#include <stdbool.h>
-
 
 #ifdef __cplusplus
 extern "C" {
diff --git a/lib/windows-cond.c b/lib/windows-cond.c
index f1abb5f2f0..8185b424bc 100644
--- a/lib/windows-cond.c
+++ b/lib/windows-cond.c
@@ -23,7 +23,6 @@
 #include "windows-cond.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <sys/time.h>
 
diff --git a/lib/windows-spawn.c b/lib/windows-spawn.c
index a9212d485e..ac7a3064a4 100644
--- a/lib/windows-spawn.c
+++ b/lib/windows-spawn.c
@@ -24,7 +24,6 @@
 #define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/lib/windows-spawn.h b/lib/windows-spawn.h
index 0be407bf93..95e300ae61 100644
--- a/lib/windows-spawn.h
+++ b/lib/windows-spawn.h
@@ -18,7 +18,6 @@
 #ifndef _WINDOWS_SPAWN_H
 #define _WINDOWS_SPAWN_H
 
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdlib.h>
 
diff --git a/lib/windows-timedrwlock.c b/lib/windows-timedrwlock.c
index 1bc86d3cf9..8036716dde 100644
--- a/lib/windows-timedrwlock.c
+++ b/lib/windows-timedrwlock.c
@@ -22,7 +22,6 @@
 #include "windows-timedrwlock.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <sys/time.h>
 
diff --git a/lib/write-any-file.h b/lib/write-any-file.h
index b229eb950a..3e06a6b07b 100644
--- a/lib/write-any-file.h
+++ b/lib/write-any-file.h
@@ -15,6 +15,4 @@
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
-#include <stdbool.h>
-
 bool can_write_any_file (void);
diff --git a/lib/xbinary-io.c b/lib/xbinary-io.c
index fdc89ab5b9..159b79f2ab 100644
--- a/lib/xbinary-io.c
+++ b/lib/xbinary-io.c
@@ -21,7 +21,6 @@
 
 #include <errno.h>
 #include <error.h>
-#include <stdbool.h>
 #include "exitfail.h"
 #include "verify.h"
 
diff --git a/lib/xstrtod.h b/lib/xstrtod.h
index 78beefa362..9f38326531 100644
--- a/lib/xstrtod.h
+++ b/lib/xstrtod.h
@@ -21,8 +21,6 @@
 #ifndef XSTRTOD_H
 # define XSTRTOD_H 1
 
-# include <stdbool.h>
-
 bool xstrtod (const char *str, const char **ptr, double *result,
               double (*convert) (char const *, char **));
 bool xstrtold (const char *str, const char **ptr, long double *result,
diff --git a/lib/yesno.h b/lib/yesno.h
index 1018d72c15..abcfaab76b 100644
--- a/lib/yesno.h
+++ b/lib/yesno.h
@@ -17,8 +17,6 @@
 #ifndef YESNO_H_
 # define YESNO_H_
 
-# include <stdbool.h>
-
 bool yesno (void);
 
 #endif
diff --git a/modules/acl b/modules/acl
index a0a5e459f1..1a3a14e6c2 100644
--- a/modules/acl
+++ b/modules/acl
@@ -11,7 +11,6 @@ gettext-h
 qcopy-acl
 qset-acl
 quote
-stdbool
 
 configure.ac:
 
diff --git a/modules/acl-permissions b/modules/acl-permissions
index 3ecbb95d9d..195257e20d 100644
--- a/modules/acl-permissions
+++ b/modules/acl-permissions
@@ -12,10 +12,10 @@ lib/set-permissions.c
 m4/acl.m4
 
 Depends-on:
+c-bool
 extern-inline
 fstat
 stat
-stdbool
 sys_stat
 
 configure.ac:
diff --git a/modules/areadlink-tests b/modules/areadlink-tests
index 869be2c34b..11bf413d78 100644
--- a/modules/areadlink-tests
+++ b/modules/areadlink-tests
@@ -4,8 +4,8 @@ tests/test-areadlink.c
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/areadlink-with-size-tests b/modules/areadlink-with-size-tests
index b9b3ded0a3..9420c773dd 100644
--- a/modules/areadlink-with-size-tests
+++ b/modules/areadlink-with-size-tests
@@ -4,8 +4,8 @@ tests/test-areadlink-with-size.c
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/areadlinkat-tests b/modules/areadlinkat-tests
index 422ac61412..8223e3964d 100644
--- a/modules/areadlinkat-tests
+++ b/modules/areadlinkat-tests
@@ -4,8 +4,8 @@ tests/test-areadlinkat.c
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/areadlinkat-with-size-tests b/modules/areadlinkat-with-size-tests
index b86d6e70a9..8303c063bf 100644
--- a/modules/areadlinkat-with-size-tests
+++ b/modules/areadlinkat-with-size-tests
@@ -4,8 +4,8 @@ tests/test-areadlinkat-with-size.c
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
-stdbool
 
 configure.ac:
 
diff --git a/modules/argmatch b/modules/argmatch
index 97d84fbb93..dd5ae5df06 100644
--- a/modules/argmatch
+++ b/modules/argmatch
@@ -7,6 +7,7 @@ lib/argmatch.c
 
 Depends-on:
 c99
+c-bool
 error
 exitfail
 getprogname
@@ -14,7 +15,6 @@ gettext-h
 memcmp
 quote
 quotearg
-stdbool
 stdlib
 verify
 
diff --git a/modules/argp b/modules/argp
index 85eefe2b14..eed2abc79d 100644
--- a/modules/argp
+++ b/modules/argp
@@ -20,6 +20,7 @@ m4/argp.m4
 Depends-on:
 alloca
 basename-lgpl
+c-bool
 extern-inline
 getopt-gnu
 strchrnul
diff --git a/modules/argv-iter b/modules/argv-iter
index f7ecaa31b9..1d86bb2ca1 100644
--- a/modules/argv-iter
+++ b/modules/argv-iter
@@ -6,9 +6,9 @@ lib/argv-iter.c
 lib/argv-iter.h
 
 Depends-on:
+c-bool
 getdelim
 snippet/arg-nonnull
-stdbool
 
 configure.ac:
 
diff --git a/modules/asyncsafe-spin b/modules/asyncsafe-spin
index fc734928db..b0e59dd319 100644
--- a/modules/asyncsafe-spin
+++ b/modules/asyncsafe-spin
@@ -6,8 +6,8 @@ lib/asyncsafe-spin.h
 lib/asyncsafe-spin.c
 
 Depends-on:
+c-bool
 signal-h
-stdbool
 sigprocmask
 windows-spin
 sparcv8+
diff --git a/modules/backup-rename b/modules/backup-rename
index 54a8270a90..c44f150488 100644
--- a/modules/backup-rename
+++ b/modules/backup-rename
@@ -12,6 +12,7 @@ Depends-on:
 argmatch
 attribute
 basename-lgpl
+c-bool
 c99
 closedir
 d-ino
@@ -21,7 +22,6 @@ memcmp
 opendirat
 readdir
 renameatu
-stdbool
 stdckdint
 stdint
 xalloc-oversized
diff --git a/modules/backupfile b/modules/backupfile
index 804e62d48c..1c7ec242b0 100644
--- a/modules/backupfile
+++ b/modules/backupfile
@@ -12,6 +12,7 @@ Depends-on:
 argmatch
 attribute
 basename-lgpl
+c-bool
 c99
 closedir
 d-ino
@@ -22,7 +23,6 @@ opendirat
 readdir
 realloc-gnu
 renameatu
-stdbool
 stdckdint
 stdint
 xalloc-die
diff --git a/modules/base32 b/modules/base32
index 93c180b09d..5ae2cfaba1 100644
--- a/modules/base32
+++ b/modules/base32
@@ -7,8 +7,8 @@ lib/base32.c
 m4/base32.m4
 
 Depends-on:
+c-bool
 ialloc
-stdbool
 memchr
 
 configure.ac:
diff --git a/modules/base64 b/modules/base64
index 278e52fc8b..1fb08c809c 100644
--- a/modules/base64
+++ b/modules/base64
@@ -7,8 +7,8 @@ lib/base64.c
 m4/base64.m4
 
 Depends-on:
+c-bool
 ialloc
-stdbool
 memchr
 
 configure.ac:
diff --git a/modules/basename-lgpl b/modules/basename-lgpl
index f81898da85..8dd84cac7d 100644
--- a/modules/basename-lgpl
+++ b/modules/basename-lgpl
@@ -6,9 +6,9 @@ lib/basename-lgpl.h
 lib/basename-lgpl.c
 
 Depends-on:
+c-bool
 double-slash-root
 filename
-stdbool
 
 configure.ac:
 
diff --git a/modules/bitset b/modules/bitset
index 8c9cb7cc89..9fd39442a7 100644
--- a/modules/bitset
+++ b/modules/bitset
@@ -18,6 +18,7 @@ lib/bitset/vector.h
 
 Depends-on:
 attribute
+c-bool
 c99
 ffsl
 fopen-gnu
diff --git a/modules/c-ctype b/modules/c-ctype
index 106050e3b9..f522430c68 100644
--- a/modules/c-ctype
+++ b/modules/c-ctype
@@ -6,8 +6,8 @@ lib/c-ctype.h
 lib/c-ctype.c
 
 Depends-on:
+c-bool
 extern-inline
-stdbool
 
 configure.ac:
 
diff --git a/modules/c-strcasestr b/modules/c-strcasestr
index f2ed9eccb6..082bdf0daf 100644
--- a/modules/c-strcasestr
+++ b/modules/c-strcasestr
@@ -7,9 +7,9 @@ lib/c-strcasestr.c
 lib/str-two-way.h
 
 Depends-on:
+c-bool
 c-ctype
 c-strcase
-stdbool
 memchr
 memcmp
 
diff --git a/modules/canonicalize b/modules/canonicalize
index ddd83bc841..55318780b6 100644
--- a/modules/canonicalize
+++ b/modules/canonicalize
@@ -9,6 +9,7 @@ m4/lstat.m4
 
 Depends-on:
 attribute
+c-bool
 double-slash-root
 errno
 extensions
@@ -26,7 +27,6 @@ rawmemchr
 readlink
 scratch_buffer
 stat
-stdbool
 sys_stat
 unistd
 xalloc-die
diff --git a/modules/canonicalize-lgpl b/modules/canonicalize-lgpl
index 252618e95e..f6cb5d8e6c 100644
--- a/modules/canonicalize-lgpl
+++ b/modules/canonicalize-lgpl
@@ -11,6 +11,7 @@ Depends-on:
 extensions
 stdlib
 nocrash
+c-bool            [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1]
 double-slash-root [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1]
 eloop-threshold   [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1]
 errno             [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1]
@@ -26,7 +27,6 @@ rawmemchr         [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONI
 readlink          [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1]
 scratch_buffer    [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1]
 stat              [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1]
-stdbool           [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1]
 sys_stat          [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1]
 unistd            [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1]
 
diff --git a/modules/ceil-tests b/modules/ceil-tests
index 4051d1c256..bac7b2336e 100644
--- a/modules/ceil-tests
+++ b/modules/ceil-tests
@@ -8,9 +8,9 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 float
 isnand-nolibm
-stdbool
 stdint
 
 configure.ac:
diff --git a/modules/ceilf-tests b/modules/ceilf-tests
index 6ead40244e..ac26d3051b 100644
--- a/modules/ceilf-tests
+++ b/modules/ceilf-tests
@@ -8,9 +8,9 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 float
 isnanf-nolibm
-stdbool
 stdint
 
 configure.ac:
diff --git a/modules/chdir-long b/modules/chdir-long
index c08ff622b4..769d96a1c3 100644
--- a/modules/chdir-long
+++ b/modules/chdir-long
@@ -13,13 +13,13 @@ pathmax
 chdir
 assure          [test $gl_cv_have_unlimited_file_name_length = no]
 atexit          [test $gl_cv_have_unlimited_file_name_length = no]
+c-bool          [test $gl_cv_have_unlimited_file_name_length = no]
 fchdir          [test $gl_cv_have_unlimited_file_name_length = no]
 fcntl-h         [test $gl_cv_have_unlimited_file_name_length = no]
 openat          [test $gl_cv_have_unlimited_file_name_length = no]
 memchr          [test $gl_cv_have_unlimited_file_name_length = no]
 mempcpy         [test $gl_cv_have_unlimited_file_name_length = no]
 memrchr         [test $gl_cv_have_unlimited_file_name_length = no]
-stdbool         [test $gl_cv_have_unlimited_file_name_length = no]
 stdlib          [test $gl_cv_have_unlimited_file_name_length = no]
 
 configure.ac:
diff --git a/modules/chown b/modules/chown
index d3f2d1e10e..c2ee71b002 100644
--- a/modules/chown
+++ b/modules/chown
@@ -8,10 +8,10 @@ m4/chown.m4
 
 Depends-on:
 unistd
+c-bool          [test $HAVE_CHOWN = 0 || test $REPLACE_CHOWN = 1]
 fstat           [test $HAVE_CHOWN = 0 || test $REPLACE_CHOWN = 1]
 open            [test $HAVE_CHOWN = 0 || test $REPLACE_CHOWN = 1]
 stat            [test $HAVE_CHOWN = 0 || test $REPLACE_CHOWN = 1]
-stdbool         [test $HAVE_CHOWN = 0 || test $REPLACE_CHOWN = 1]
 sys_stat        [test $HAVE_CHOWN = 0 || test $REPLACE_CHOWN = 1]
 
 configure.ac:
diff --git a/modules/chown-tests b/modules/chown-tests
index 13138f438b..ee0e885424 100644
--- a/modules/chown-tests
+++ b/modules/chown-tests
@@ -6,13 +6,13 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
 intprops
 lstat
 mgetgroups
 nanosleep
 stat-time
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/classpath b/modules/classpath
index d840e080f0..a2aa009e3a 100644
--- a/modules/classpath
+++ b/modules/classpath
@@ -6,7 +6,7 @@ lib/classpath.h
 lib/classpath.c
 
 Depends-on:
-stdbool
+c-bool
 xsetenv
 xalloc
 
diff --git a/modules/clean-temp b/modules/clean-temp
index a83f249903..02e3e6e5ea 100644
--- a/modules/clean-temp
+++ b/modules/clean-temp
@@ -6,8 +6,8 @@ lib/clean-temp.h
 lib/clean-temp.c
 
 Depends-on:
+c-bool
 c99
-stdbool
 clean-temp-simple
 list
 asyncsafe-spin
diff --git a/modules/clean-temp-simple b/modules/clean-temp-simple
index 2d2a34d9da..2cae31f354 100644
--- a/modules/clean-temp-simple
+++ b/modules/clean-temp-simple
@@ -7,8 +7,8 @@ lib/clean-temp-private.h
 lib/clean-temp-simple.c
 
 Depends-on:
+c-bool
 c99
-stdbool
 list
 asyncsafe-spin
 unistd
diff --git a/modules/cloexec b/modules/cloexec
index 8e458bb16e..c2165ad48a 100644
--- a/modules/cloexec
+++ b/modules/cloexec
@@ -6,9 +6,9 @@ lib/cloexec.c
 lib/cloexec.h
 
 Depends-on:
+c-bool
 dup2
 fcntl
-stdbool
 
 configure.ac:
 gl_MODULE_INDICATOR_FOR_TESTS([cloexec])
diff --git a/modules/close-stream b/modules/close-stream
index 78ed207992..d58576f6fa 100644
--- a/modules/close-stream
+++ b/modules/close-stream
@@ -6,8 +6,8 @@ lib/close-stream.h
 lib/close-stream.c
 
 Depends-on:
+c-bool
 fpending
-stdbool
 
 configure.ac:
 gl_MODULE_INDICATOR([close-stream])
diff --git a/modules/closein b/modules/closein
index f0c1287ba5..1a764db105 100644
--- a/modules/closein
+++ b/modules/closein
@@ -6,10 +6,10 @@ lib/closein.h
 lib/closein.c
 
 Depends-on:
+c-bool
 closeout
 freadahead
 fflush
-stdbool
 unistd
 
 configure.ac:
diff --git a/modules/closeout b/modules/closeout
index 32fd9236d0..535c5f91f6 100644
--- a/modules/closeout
+++ b/modules/closeout
@@ -6,12 +6,12 @@ lib/closeout.h
 lib/closeout.c
 
 Depends-on:
+c-bool
 close-stream
 gettext-h
 error
 quotearg
 exitfail
-stdbool
 unistd
 
 configure.ac:
diff --git a/modules/cond b/modules/cond
index 43b2bd67de..b876917eb4 100644
--- a/modules/cond
+++ b/modules/cond
@@ -9,9 +9,9 @@ m4/cond.m4
 Depends-on:
 threadlib
 lock
+c-bool
 errno
 extern-inline
-stdbool
 time
 windows-cond    [test $gl_threads_api = windows]
 
diff --git a/modules/crypto/des b/modules/crypto/des
index 4147cbddc7..4ad3017250 100644
--- a/modules/crypto/des
+++ b/modules/crypto/des
@@ -6,8 +6,8 @@ lib/des.c
 lib/des.h
 
 Depends-on:
+c-bool
 stdint
-stdbool
 memcmp
 
 configure.ac:
diff --git a/modules/csharpcomp b/modules/csharpcomp
index a880a12d4f..656982298f 100644
--- a/modules/csharpcomp
+++ b/modules/csharpcomp
@@ -6,7 +6,7 @@ lib/csharpcomp.h
 lib/csharpcomp.c
 
 Depends-on:
-stdbool
+c-bool
 xmalloca
 execute
 spawn-pipe
diff --git a/modules/csharpexec b/modules/csharpexec
index 853ec0b2c1..ed21cc6aa5 100644
--- a/modules/csharpexec
+++ b/modules/csharpexec
@@ -8,7 +8,7 @@ lib/classpath.h
 lib/classpath.c
 
 Depends-on:
-stdbool
+c-bool
 execute
 xsetenv
 sh-quote
diff --git a/modules/cycle-check b/modules/cycle-check
index e8ef2caf7e..792dcfa2a2 100644
--- a/modules/cycle-check
+++ b/modules/cycle-check
@@ -8,9 +8,9 @@ m4/cycle-check.m4
 
 Depends-on:
 assure
+c-bool
 dev-ino
 same-inode
-stdbool
 stdint
 
 configure.ac:
diff --git a/modules/dfa b/modules/dfa
index 4b78ef4870..bbad8f601e 100644
--- a/modules/dfa
+++ b/modules/dfa
@@ -9,13 +9,13 @@ lib/localeinfo.h
 
 Depends-on:
 assert
+c-bool
 c99
 ctype
 flexmember
 idx
 locale
 regex
-stdbool
 stddef
 stdint
 stdio
diff --git a/modules/diffseq b/modules/diffseq
index 7591521ed9..0fd4c1c5aa 100644
--- a/modules/diffseq
+++ b/modules/diffseq
@@ -5,6 +5,7 @@ Files:
 lib/diffseq.h
 
 Depends-on:
+c-bool
 c99
 
 configure.ac:
diff --git a/modules/dirname-lgpl b/modules/dirname-lgpl
index 8eb1dd7ad7..19cc82a45b 100644
--- a/modules/dirname-lgpl
+++ b/modules/dirname-lgpl
@@ -8,10 +8,10 @@ lib/stripslash.c
 
 Depends-on:
 basename-lgpl
+c-bool
 double-slash-root
 filename
 malloc-posix
-stdbool
 
 configure.ac:
 
diff --git a/modules/dprintf-posix-tests b/modules/dprintf-posix-tests
index 09ebbc06f9..62a11791ea 100644
--- a/modules/dprintf-posix-tests
+++ b/modules/dprintf-posix-tests
@@ -10,7 +10,7 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 stdint
 get-rusage-as
 
diff --git a/modules/dynarray b/modules/dynarray
index 668959482e..9a2fe5aec1 100644
--- a/modules/dynarray
+++ b/modules/dynarray
@@ -12,11 +12,11 @@ lib/malloc/dynarray_resize.c
 lib/malloc/dynarray_resize_clear.c
 
 Depends-on:
+c-bool
 c99
 builtin-expect
 gen-header
 libc-config
-stdbool
 stddef
 intprops
 
diff --git a/modules/exclude b/modules/exclude
index 13871bd635..d965820907 100644
--- a/modules/exclude
+++ b/modules/exclude
@@ -6,6 +6,7 @@ lib/exclude.h
 lib/exclude.c
 
 Depends-on:
+c-bool
 filename
 fnmatch
 fopen-gnu
@@ -13,7 +14,6 @@ hash
 mbscasecmp
 mbuiter
 regex
-stdbool
 unlocked-io-internal
 verify
 xalloc
diff --git a/modules/execute b/modules/execute
index fc90554ea4..b97c828c23 100644
--- a/modules/execute
+++ b/modules/execute
@@ -7,6 +7,7 @@ lib/execute.c
 m4/execute.m4
 
 Depends-on:
+c-bool
 dup2
 canonicalize
 environ
@@ -28,7 +29,6 @@ posix_spawnattr_init
 posix_spawnattr_setsigmask
 posix_spawnattr_setflags
 posix_spawnattr_destroy
-stdbool
 stdlib
 sys_wait
 unistd
diff --git a/modules/execute-tests b/modules/execute-tests
index 14d48676c5..657356e278 100644
--- a/modules/execute-tests
+++ b/modules/execute-tests
@@ -10,12 +10,12 @@ tests/qemu.h
 tests/macros.h
 
 Depends-on:
+c-bool
 dup2
 fcntl
 mkdir
 msvc-inval
 read-file
-stdbool
 stdint
 unistd
 
diff --git a/modules/execvpe b/modules/execvpe
index cc486e28d9..9f26fff3b2 100644
--- a/modules/execvpe
+++ b/modules/execvpe
@@ -9,7 +9,7 @@ Depends-on:
 unistd
 extensions
 free-posix      [test $HAVE_EXECVPE = 0 || test $REPLACE_EXECVPE = 1]
-stdbool         [test $HAVE_EXECVPE = 0 || test $REPLACE_EXECVPE = 1]
+c-bool          [test $HAVE_EXECVPE = 0 || test $REPLACE_EXECVPE = 1]
 findprog-in     [test $HAVE_EXECVPE = 0 || test $REPLACE_EXECVPE = 1]
 execve          [test $HAVE_EXECVPE = 0 || test $REPLACE_EXECVPE = 1]
 
diff --git a/modules/fatal-signal b/modules/fatal-signal
index 10351b9b7d..3346029e32 100644
--- a/modules/fatal-signal
+++ b/modules/fatal-signal
@@ -8,8 +8,8 @@ m4/fatal-signal.m4
 m4/sig_atomic_t.m4
 
 Depends-on:
+c-bool
 c99
-stdbool
 unistd
 sigaction
 lock
diff --git a/modules/fchdir b/modules/fchdir
index 13437a92f1..e2d27b2750 100644
--- a/modules/fchdir
+++ b/modules/fchdir
@@ -8,6 +8,7 @@ m4/fchdir.m4
 Depends-on:
 unistd
 assure           [test $HAVE_FCHDIR = 0]
+c-bool           [test $HAVE_FCHDIR = 0]
 chdir            [test $HAVE_FCHDIR = 0]
 close            [test $HAVE_FCHDIR = 0]
 dirent           [test $HAVE_FCHDIR = 0]
@@ -24,7 +25,6 @@ malloc-posix     [test $HAVE_FCHDIR = 0]
 open             [test $HAVE_FCHDIR = 0]
 realloc-posix    [test $HAVE_FCHDIR = 0]
 stat             [test $HAVE_FCHDIR = 0]
-stdbool          [test $HAVE_FCHDIR = 0]
 strdup-posix     [test $HAVE_FCHDIR = 0]
 sys_stat         [test $HAVE_FCHDIR = 0]
 
diff --git a/modules/fcntl-safer-tests b/modules/fcntl-safer-tests
index b967c8aa78..14f9e7c14a 100644
--- a/modules/fcntl-safer-tests
+++ b/modules/fcntl-safer-tests
@@ -4,7 +4,7 @@ tests/test-fcntl-safer.c
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 fcntl
 symlink
 
diff --git a/modules/fcntl-tests b/modules/fcntl-tests
index 5e34440e7b..95902f3cc9 100644
--- a/modules/fcntl-tests
+++ b/modules/fcntl-tests
@@ -4,11 +4,11 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 binary-io
 close
 getdtablesize
 msvc-nothrow
-stdbool
 
 configure.ac:
 
diff --git a/modules/file-has-acl b/modules/file-has-acl
index c41cde1d4b..293f784688 100644
--- a/modules/file-has-acl
+++ b/modules/file-has-acl
@@ -8,6 +8,7 @@ m4/acl.m4
 
 Depends-on:
 acl-permissions
+c-bool
 free-posix
 stat
 
diff --git a/modules/file-set b/modules/file-set
index 532828c574..26de4bf42e 100644
--- a/modules/file-set
+++ b/modules/file-set
@@ -6,9 +6,9 @@ lib/file-set.c
 lib/file-set.h
 
 Depends-on:
+c-bool
 hash
 hash-triple-simple
-stdbool
 xalloc
 xalloc-die
 
diff --git a/modules/filenamecat-tests b/modules/filenamecat-tests
index 7b2a98f498..8c97e1c5bf 100644
--- a/modules/filenamecat-tests
+++ b/modules/filenamecat-tests
@@ -2,8 +2,8 @@ Files:
 tests/test-filenamecat.c
 
 Depends-on:
+c-bool
 idx
-stdbool
 
 configure.ac:
 
diff --git a/modules/filevercmp b/modules/filevercmp
index 4786ce11b6..89b849b93c 100644
--- a/modules/filevercmp
+++ b/modules/filevercmp
@@ -6,9 +6,9 @@ lib/filevercmp.h
 lib/filevercmp.c
 
 Depends-on:
+c-bool
 c-ctype
 idx
-stdbool
 verify
 
 configure.ac:
diff --git a/modules/findprog b/modules/findprog
index b5f3c20d51..db8146ba1f 100644
--- a/modules/findprog
+++ b/modules/findprog
@@ -8,7 +8,7 @@ m4/findprog.m4
 m4/eaccess.m4
 
 Depends-on:
-stdbool
+c-bool
 sys_stat
 xalloc
 xconcat-filename
diff --git a/modules/findprog-in b/modules/findprog-in
index 5f0437744b..86415788c6 100644
--- a/modules/findprog-in
+++ b/modules/findprog-in
@@ -8,7 +8,7 @@ m4/findprog-in.m4
 m4/eaccess.m4
 
 Depends-on:
-stdbool
+c-bool
 sys_stat
 filename
 concat-filename
diff --git a/modules/findprog-lgpl b/modules/findprog-lgpl
index 658183de4e..afb905a273 100644
--- a/modules/findprog-lgpl
+++ b/modules/findprog-lgpl
@@ -9,7 +9,7 @@ m4/findprog.m4
 m4/eaccess.m4
 
 Depends-on:
-stdbool
+c-bool
 sys_stat
 strdup
 concat-filename
diff --git a/modules/floor-tests b/modules/floor-tests
index c57c3c9ecc..351211aba3 100644
--- a/modules/floor-tests
+++ b/modules/floor-tests
@@ -8,9 +8,9 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 float
 isnand-nolibm
-stdbool
 stdint
 
 configure.ac:
diff --git a/modules/floorf-tests b/modules/floorf-tests
index 8e70043688..d88602f590 100644
--- a/modules/floorf-tests
+++ b/modules/floorf-tests
@@ -8,9 +8,9 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 float
 isnanf-nolibm
-stdbool
 stdint
 
 configure.ac:
diff --git a/modules/fma b/modules/fma
index dc45a94826..8235c920e6 100644
--- a/modules/fma
+++ b/modules/fma
@@ -11,7 +11,7 @@ m4/mathfunc.m4
 Depends-on:
 math
 float           [test $HAVE_FMA = 0 || test $REPLACE_FMA = 1]
-stdbool         [test $HAVE_FMA = 0 || test $REPLACE_FMA = 1]
+c-bool          [test $HAVE_FMA = 0 || test $REPLACE_FMA = 1]
 verify          [test $HAVE_FMA = 0 || test $REPLACE_FMA = 1]
 isfinite        [test $HAVE_FMA = 0 || test $REPLACE_FMA = 1]
 integer_length  [test $HAVE_FMA = 0 || test $REPLACE_FMA = 1]
diff --git a/modules/fmaf b/modules/fmaf
index 53fe229c10..d92c16a7b7 100644
--- a/modules/fmaf
+++ b/modules/fmaf
@@ -13,7 +13,7 @@ Depends-on:
 math
 extensions
 float           [test $HAVE_FMAF = 0 || test $REPLACE_FMAF = 1]
-stdbool         [test $HAVE_FMAF = 0 || test $REPLACE_FMAF = 1]
+c-bool          [test $HAVE_FMAF = 0 || test $REPLACE_FMAF = 1]
 verify          [test $HAVE_FMAF = 0 || test $REPLACE_FMAF = 1]
 isfinite        [test $HAVE_FMAF = 0 || test $REPLACE_FMAF = 1]
 integer_length  [test $HAVE_FMAF = 0 || test $REPLACE_FMAF = 1]
diff --git a/modules/fmal b/modules/fmal
index e24ff02a95..3ca2904bfe 100644
--- a/modules/fmal
+++ b/modules/fmal
@@ -14,7 +14,7 @@ math
 extensions
 fma             [{ test $HAVE_FMAL = 0 || test $REPLACE_FMAL = 1; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 1]
 float           [{ test $HAVE_FMAL = 0 || test $REPLACE_FMAL = 1; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 0]
-stdbool         [{ test $HAVE_FMAL = 0 || test $REPLACE_FMAL = 1; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 0]
+c-bool          [{ test $HAVE_FMAL = 0 || test $REPLACE_FMAL = 1; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 0]
 verify          [{ test $HAVE_FMAL = 0 || test $REPLACE_FMAL = 1; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 0]
 isfinite        [{ test $HAVE_FMAL = 0 || test $REPLACE_FMAL = 1; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 0]
 integer_length  [{ test $HAVE_FMAL = 0 || test $REPLACE_FMAL = 1; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 0]
diff --git a/modules/fnmatch b/modules/fnmatch
index 7de95c565a..ab61076bc2 100644
--- a/modules/fnmatch
+++ b/modules/fnmatch
@@ -13,12 +13,12 @@ alloca-opt      [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
 attribute       [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
 btowc           [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
 builtin-expect  [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
+c-bool          [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
 flexmember      [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
 idx             [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
 isblank         [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
 iswctype        [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
 libc-config     [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
-stdbool         [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
 stdckdint       [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
 strnlen         [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
 wchar           [test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1]
diff --git a/modules/fopen b/modules/fopen
index da216c9cec..bae3b17eac 100644
--- a/modules/fopen
+++ b/modules/fopen
@@ -9,7 +9,7 @@ Depends-on:
 stdio
 largefile
 fcntl-h         [test $REPLACE_FOPEN = 1]
-stdbool         [test $REPLACE_FOPEN = 1]
+c-bool          [test $REPLACE_FOPEN = 1]
 unistd          [test $REPLACE_FOPEN = 1]
 close           [test $REPLACE_FOPEN = 1]
 fstat           [test $REPLACE_FOPEN = 1]
diff --git a/modules/fopen-gnu b/modules/fopen-gnu
index 8903508986..5701fd8d8c 100644
--- a/modules/fopen-gnu
+++ b/modules/fopen-gnu
@@ -8,7 +8,7 @@ Depends-on:
 fopen
 open            [test $REPLACE_FOPEN_FOR_FOPEN_GNU = 1]
 fcntl-h         [test $REPLACE_FOPEN_FOR_FOPEN_GNU = 1]
-stdbool         [test $REPLACE_FOPEN_FOR_FOPEN_GNU = 1]
+c-bool          [test $REPLACE_FOPEN_FOR_FOPEN_GNU = 1]
 unistd          [test $REPLACE_FOPEN_FOR_FOPEN_GNU = 1]
 close           [test $REPLACE_FOPEN_FOR_FOPEN_GNU = 1]
 fstat           [test $REPLACE_FOPEN_FOR_FOPEN_GNU = 1]
diff --git a/modules/fprintf-posix-tests b/modules/fprintf-posix-tests
index de0a8df796..488fea470f 100644
--- a/modules/fprintf-posix-tests
+++ b/modules/fprintf-posix-tests
@@ -13,7 +13,7 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 stdint
 get-rusage-as
 
diff --git a/modules/freadable b/modules/freadable
index 66267ec6cd..df17cd89fe 100644
--- a/modules/freadable
+++ b/modules/freadable
@@ -8,7 +8,7 @@ lib/stdio-impl.h
 m4/freadable.m4
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 gl_FUNC_FREADABLE
diff --git a/modules/freading b/modules/freading
index b5c00c65d2..7234753f91 100644
--- a/modules/freading
+++ b/modules/freading
@@ -8,7 +8,7 @@ lib/stdio-impl.h
 m4/freading.m4
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 gl_FUNC_FREADING
diff --git a/modules/freopen-safer b/modules/freopen-safer
index 8b1e8655a2..b4c16ad8fe 100644
--- a/modules/freopen-safer
+++ b/modules/freopen-safer
@@ -8,10 +8,10 @@ lib/freopen-safer.c
 
 Depends-on:
 attribute
+c-bool
 dup2
 freopen
 open
-stdbool
 
 configure.ac:
 gl_MODULE_INDICATOR([freopen-safer])
diff --git a/modules/fstrcmp-tests b/modules/fstrcmp-tests
index fa2183c113..49ab3b22e9 100644
--- a/modules/fstrcmp-tests
+++ b/modules/fstrcmp-tests
@@ -3,7 +3,7 @@ tests/test-fstrcmp.c
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/fsusage b/modules/fsusage
index 7cbca5e1c3..5cf084e171 100644
--- a/modules/fsusage
+++ b/modules/fsusage
@@ -7,9 +7,9 @@ lib/fsusage.c
 m4/fsusage.m4
 
 Depends-on:
+c-bool
 c99
 largefile
-stdbool
 stdint
 
 configure.ac:
diff --git a/modules/fts b/modules/fts
index e5443adb2f..4323338d93 100644
--- a/modules/fts
+++ b/modules/fts
@@ -9,6 +9,7 @@ m4/fts.m4
 
 Depends-on:
 attribute
+c-bool
 c99
 closedir
 cycle-check
@@ -29,7 +30,6 @@ opendir
 opendirat
 readdir
 stdalign
-stdbool
 stddef
 
 configure.ac:
diff --git a/modules/fwritable b/modules/fwritable
index 7c7933eaad..f1b93d0596 100644
--- a/modules/fwritable
+++ b/modules/fwritable
@@ -8,7 +8,7 @@ lib/stdio-impl.h
 m4/fwritable.m4
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 gl_FUNC_FWRITABLE
diff --git a/modules/fwriteerror b/modules/fwriteerror
index 9386e01430..a3d52240fb 100644
--- a/modules/fwriteerror
+++ b/modules/fwriteerror
@@ -6,8 +6,8 @@ lib/fwriteerror.h
 lib/fwriteerror.c
 
 Depends-on:
+c-bool
 errno
-stdbool
 
 configure.ac:
 gl_MODULE_INDICATOR([fwriteerror])
diff --git a/modules/fwriting b/modules/fwriting
index 6040bc00d1..1e7355f8f0 100644
--- a/modules/fwriting
+++ b/modules/fwriting
@@ -8,7 +8,7 @@ lib/stdio-impl.h
 m4/fwriting.m4
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 gl_FUNC_FWRITING
@@ -27,4 +27,3 @@ LGPL
 
 Maintainer:
 Eric Blake
-
diff --git a/modules/gen-uni-tables b/modules/gen-uni-tables
index b384471fa1..893f574ddd 100644
--- a/modules/gen-uni-tables
+++ b/modules/gen-uni-tables
@@ -8,6 +8,7 @@ lib/unictype/3level.h
 lib/unictype/3levelbit.h
 
 Depends-on:
+c-bool
 memcmp
 strdup
 strstr-simple
diff --git a/modules/get-rusage-as-tests b/modules/get-rusage-as-tests
index 67c011d712..3be0ccaf99 100644
--- a/modules/get-rusage-as-tests
+++ b/modules/get-rusage-as-tests
@@ -4,7 +4,7 @@ tests/qemu.h
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/get-rusage-data-tests b/modules/get-rusage-data-tests
index d18d30bc23..eb25c14bb0 100644
--- a/modules/get-rusage-data-tests
+++ b/modules/get-rusage-data-tests
@@ -5,7 +5,7 @@ tests/macros.h
 m4/musl.m4
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 gl_MUSL_LIBC
diff --git a/modules/getaddrinfo b/modules/getaddrinfo
index 5dadc9d20c..ed92414dc9 100644
--- a/modules/getaddrinfo
+++ b/modules/getaddrinfo
@@ -10,10 +10,10 @@ Depends-on:
 netdb
 sys_socket
 extensions
+c-bool          [test $HAVE_GETADDRINFO = 0 || test $REPLACE_GETADDRINFO = 1]
 gettext-h       [test $HAVE_GETADDRINFO = 0 || test $REPLACE_GETADDRINFO = 1 || test $HAVE_DECL_GAI_STRERROR = 0 || test $REPLACE_GAI_STRERROR = 1]
 inet_ntop       [test $HAVE_GETADDRINFO = 0 || test $REPLACE_GETADDRINFO = 1]
 snprintf        [test $HAVE_GETADDRINFO = 0 || test $REPLACE_GETADDRINFO = 1]
-stdbool         [test $HAVE_GETADDRINFO = 0 || test $REPLACE_GETADDRINFO = 1]
 strdup          [test $HAVE_GETADDRINFO = 0 || test $REPLACE_GETADDRINFO = 1]
 servent         [test $HAVE_GETADDRINFO = 0 || test $REPLACE_GETADDRINFO = 1]
 hostent         [test $HAVE_GETADDRINFO = 0 || test $REPLACE_GETADDRINFO = 1]
diff --git a/modules/getcwd b/modules/getcwd
index 597d22ca0b..2559d293ca 100644
--- a/modules/getcwd
+++ b/modules/getcwd
@@ -26,7 +26,7 @@ opendir         [test $REPLACE_GETCWD = 1]
 readdir         [test $REPLACE_GETCWD = 1]
 rewinddir       [test $REPLACE_GETCWD = 1]
 closedir        [test $REPLACE_GETCWD = 1]
-stdbool         [test $REPLACE_GETCWD = 1]
+c-bool          [test $REPLACE_GETCWD = 1]
 malloc-posix    [test $REPLACE_GETCWD = 1]
 strdup-posix    [test $REPLACE_GETCWD = 1]
 
diff --git a/modules/getcwd-tests b/modules/getcwd-tests
index c842c77115..2a576fc5ee 100644
--- a/modules/getcwd-tests
+++ b/modules/getcwd-tests
@@ -4,11 +4,11 @@ tests/test-getcwd.c
 tests/qemu.h
 
 Depends-on:
+c-bool
 errno
 fcntl-h
 getcwd-lgpl
 pathmax
-stdbool
 sys_stat
 test-framework-sh
 
diff --git a/modules/getloadavg b/modules/getloadavg
index 9a5553ebba..32cff45e34 100644
--- a/modules/getloadavg
+++ b/modules/getloadavg
@@ -7,9 +7,9 @@ m4/getloadavg.m4
 
 Depends-on:
 extensions
+c-bool    [test $HAVE_GETLOADAVG = 0]
 intprops  [test $HAVE_GETLOADAVG = 0]
 open      [case $host_os in mingw*) false;; *) test $HAVE_GETLOADAVG = 0;; esac]
-stdbool   [test $HAVE_GETLOADAVG = 0]
 stdlib    [test $HAVE_GETLOADAVG = 0]
 
 configure.ac:
diff --git a/modules/getlogin-tests b/modules/getlogin-tests
index 5056a9ca47..cac44ef482 100644
--- a/modules/getlogin-tests
+++ b/modules/getlogin-tests
@@ -5,7 +5,7 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/getlogin_r-tests b/modules/getlogin_r-tests
index 7918ebd183..4720f887a7 100644
--- a/modules/getlogin_r-tests
+++ b/modules/getlogin_r-tests
@@ -5,7 +5,7 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/getndelim2 b/modules/getndelim2
index dec82e4b57..055bdfa222 100644
--- a/modules/getndelim2
+++ b/modules/getndelim2
@@ -9,7 +9,7 @@ m4/getndelim2.m4
 
 Depends-on:
 ssize_t
-stdbool
+c-bool
 stdint
 freadptr
 freadseek
diff --git a/modules/getopt-gnu-tests b/modules/getopt-gnu-tests
index 688b5ded87..46735faef0 100644
--- a/modules/getopt-gnu-tests
+++ b/modules/getopt-gnu-tests
@@ -7,9 +7,9 @@ tests/test-getopt.h
 tests/test-getopt_long.h
 
 Depends-on:
+c-bool
 dup2
 setenv
-stdbool
 unistd
 unsetenv
 
diff --git a/modules/getopt-posix-tests b/modules/getopt-posix-tests
index fe71fcdfa4..3fdc3a2842 100644
--- a/modules/getopt-posix-tests
+++ b/modules/getopt-posix-tests
@@ -6,9 +6,9 @@ tests/test-getopt-main.h
 tests/test-getopt.h
 
 Depends-on:
+c-bool
 dup2
 setenv
-stdbool
 unistd
 unsetenv
 
diff --git a/modules/getpass b/modules/getpass
index 74d781aff2..c684c9047a 100644
--- a/modules/getpass
+++ b/modules/getpass
@@ -8,11 +8,11 @@ m4/getpass.m4
 
 Depends-on:
 unistd
+c-bool
 extensions
 fopen-gnu
 fseeko
 getline
-stdbool
 strdup-posix
 
 configure.ac:
diff --git a/modules/getrandom b/modules/getrandom
index cb4317e9f7..3e03dc6f02 100644
--- a/modules/getrandom
+++ b/modules/getrandom
@@ -7,6 +7,7 @@ m4/getrandom.m4
 
 Depends-on:
 sys_random
+c-bool              [test $HAVE_GETRANDOM = 0 || test $REPLACE_GETRANDOM = 1]
 fcntl-h             [test $HAVE_GETRANDOM = 0 || test $REPLACE_GETRANDOM = 1]
 minmax              [test $HAVE_GETRANDOM = 0 || test $REPLACE_GETRANDOM = 1]
 open                [case $host_os in mingw*) false;; *) test $HAVE_GETRANDOM = 0 || test $REPLACE_GETRANDOM = 1;; esac]
diff --git a/modules/git-merge-changelog b/modules/git-merge-changelog
index c58ddc7bd9..41f7386870 100644
--- a/modules/git-merge-changelog
+++ b/modules/git-merge-changelog
@@ -7,7 +7,7 @@ lib/git-merge-changelog.c
 Depends-on:
 c99
 getopt-gnu
-stdbool
+c-bool
 stdlib
 error
 read-file
diff --git a/modules/glob b/modules/glob
index 83cd729ceb..31275c48c6 100644
--- a/modules/glob
+++ b/modules/glob
@@ -15,6 +15,7 @@ c99
 largefile
 alloca          [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
 builtin-expect  [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
+c-bool          [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
 closedir        [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
 d-type          [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
 dirfd           [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
@@ -28,7 +29,6 @@ mempcpy         [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
 opendir         [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
 readdir         [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
 scratch_buffer  [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
-stdbool         [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
 stdint          [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
 strdup          [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
 unistd          [test $HAVE_GLOB = 0 || test $REPLACE_GLOB = 1]
diff --git a/modules/hamt b/modules/hamt
index d73f09c2db..63511e9345 100644
--- a/modules/hamt
+++ b/modules/hamt
@@ -6,10 +6,10 @@ lib/hamt.h
 lib/hamt.c
 
 Depends-on:
+c-bool
 count-one-bits
 flexmember
 inttypes-incomplete
-stdbool
 stdint
 verify
 xalloc
diff --git a/modules/hard-locale b/modules/hard-locale
index df07d4a6ed..7d281f9ab3 100644
--- a/modules/hard-locale
+++ b/modules/hard-locale
@@ -6,7 +6,7 @@ lib/hard-locale.h
 lib/hard-locale.c
 
 Depends-on:
-stdbool
+c-bool
 setlocale-null
 
 configure.ac:
diff --git a/modules/hash b/modules/hash
index 42502e749e..4e240c9538 100644
--- a/modules/hash
+++ b/modules/hash
@@ -7,7 +7,7 @@ lib/hash.h
 
 Depends-on:
 bitrotate
-stdbool
+c-bool
 stdint
 xalloc-oversized
 
diff --git a/modules/hash-tests b/modules/hash-tests
index 72a6ae61c1..3384db629a 100644
--- a/modules/hash-tests
+++ b/modules/hash-tests
@@ -3,9 +3,9 @@ tests/test-hash.c
 tests/macros.h
 
 Depends-on:
+c-bool
 hash-pjw
 inttostr
-stdbool
 
 configure.ac:
 
diff --git a/modules/hash-triple-simple b/modules/hash-triple-simple
index 1ef3209d78..3a8305bfec 100644
--- a/modules/hash-triple-simple
+++ b/modules/hash-triple-simple
@@ -6,6 +6,7 @@ lib/hash-triple-simple.c
 lib/hash-triple.h
 
 Depends-on:
+c-bool
 hash-pjw
 same-inode
 
diff --git a/modules/human b/modules/human
index 58b1b79ca3..2b758cb119 100644
--- a/modules/human
+++ b/modules/human
@@ -9,12 +9,12 @@ m4/human.m4
 
 Depends-on:
 argmatch
+c-bool
 error
 intprops
 localeconv
 memmove
 xstrtoumax
-stdbool
 stdint
 
 configure.ac:
diff --git a/modules/i-ring b/modules/i-ring
index 374970694b..c8ca9f6802 100644
--- a/modules/i-ring
+++ b/modules/i-ring
@@ -7,7 +7,7 @@ lib/i-ring.c
 m4/i-ring.m4
 
 Depends-on:
-stdbool
+c-bool
 verify
 
 configure.ac:
diff --git a/modules/idpriv-drop-tests b/modules/idpriv-drop-tests
index 17c38637d9..9a61fea4a0 100644
--- a/modules/idpriv-drop-tests
+++ b/modules/idpriv-drop-tests
@@ -13,7 +13,7 @@ tests/test-idpriv-drop.c
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/idpriv-droptemp-tests b/modules/idpriv-droptemp-tests
index 254fd3a161..aadd95e9b8 100644
--- a/modules/idpriv-droptemp-tests
+++ b/modules/idpriv-droptemp-tests
@@ -13,7 +13,7 @@ tests/test-idpriv-droptemp.c
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/immutable-tests b/modules/immutable-tests
index 3265fa6f89..fab42eddc4 100644
--- a/modules/immutable-tests
+++ b/modules/immutable-tests
@@ -4,7 +4,7 @@ tests/test-immutable.c
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 _Exit
 
 configure.ac:
diff --git a/modules/intprops-tests b/modules/intprops-tests
index f02b357584..f264fb8639 100644
--- a/modules/intprops-tests
+++ b/modules/intprops-tests
@@ -3,8 +3,8 @@ tests/test-intprops.c
 tests/macros.h
 
 Depends-on:
+c-bool
 inttypes
-stdbool
 verify
 
 configure.ac:
diff --git a/modules/isapipe b/modules/isapipe
index b065843f47..3e8858cb48 100644
--- a/modules/isapipe
+++ b/modules/isapipe
@@ -7,7 +7,7 @@ lib/isapipe.h
 m4/isapipe.m4
 
 Depends-on:
-stdbool         [test $HAVE_ISAPIPE = 0]
+c-bool          [test $HAVE_ISAPIPE = 0]
 sys_stat        [test $HAVE_ISAPIPE = 0]
 unistd          [test $HAVE_ISAPIPE = 0]
 msvc-nothrow    [test $HAVE_ISAPIPE = 0]
diff --git a/modules/javacomp b/modules/javacomp
index 838aa2b633..8361f60872 100644
--- a/modules/javacomp
+++ b/modules/javacomp
@@ -6,7 +6,7 @@ lib/javacomp.h
 lib/javacomp.c
 
 Depends-on:
-stdbool
+c-bool
 unistd
 javaversion
 execute
diff --git a/modules/javaexec b/modules/javaexec
index 8322a4842b..0151f9e023 100644
--- a/modules/javaexec
+++ b/modules/javaexec
@@ -6,7 +6,7 @@ lib/javaexec.h
 lib/javaexec.c
 
 Depends-on:
-stdbool
+c-bool
 execute
 classpath
 xsetenv
diff --git a/modules/javaversion b/modules/javaversion
index ebec3eafb4..b675a99d2c 100644
--- a/modules/javaversion
+++ b/modules/javaversion
@@ -9,7 +9,7 @@ lib/javaversion.class
 
 Depends-on:
 javaexec
-stdbool
+c-bool
 spawn-pipe
 wait-process
 getline
diff --git a/modules/lchown b/modules/lchown
index 217dd75cce..b09c0adcba 100644
--- a/modules/lchown
+++ b/modules/lchown
@@ -8,9 +8,9 @@ m4/lchown.m4
 Depends-on:
 unistd
 readlink        [test $HAVE_LCHOWN = 0]
+c-bool          [test $HAVE_LCHOWN = 0 || test $REPLACE_LCHOWN = 1]
 chown           [test $HAVE_LCHOWN = 0 || test $REPLACE_LCHOWN = 1]
 errno           [test $HAVE_LCHOWN = 0 || test $REPLACE_LCHOWN = 1]
-stdbool         [test $HAVE_LCHOWN = 0 || test $REPLACE_LCHOWN = 1]
 sys_stat        [test $HAVE_LCHOWN = 0 || test $REPLACE_LCHOWN = 1]
 lstat           [test $REPLACE_LCHOWN = 1]
 
diff --git a/modules/lchown-tests b/modules/lchown-tests
index 42b946014c..3319766294 100644
--- a/modules/lchown-tests
+++ b/modules/lchown-tests
@@ -6,13 +6,13 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 errno
 ignore-value
 intprops
 mgetgroups
 nanosleep
 stat-time
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/libtextstyle-optional b/modules/libtextstyle-optional
index 616f17eadc..1446937435 100644
--- a/modules/libtextstyle-optional
+++ b/modules/libtextstyle-optional
@@ -8,7 +8,7 @@ m4/libtextstyle-optional.m4
 Depends-on:
 gen-header
 libtextstyle
-stdbool
+c-bool
 stdio
 unistd
 fsync
diff --git a/modules/link-tests b/modules/link-tests
index 5b1978e856..c7a6e29a9f 100644
--- a/modules/link-tests
+++ b/modules/link-tests
@@ -5,9 +5,9 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
 errno
-stdbool
 sys_stat
 
 configure.ac:
diff --git a/modules/list b/modules/list
index 845231506d..7a2786d64b 100644
--- a/modules/list
+++ b/modules/list
@@ -6,8 +6,8 @@ lib/gl_list.h
 lib/gl_list.c
 
 Depends-on:
+c-bool
 extern-inline
-stdbool
 
 configure.ac:
 
diff --git a/modules/localename b/modules/localename
index fc097829be..37c578fdbc 100644
--- a/modules/localename
+++ b/modules/localename
@@ -13,7 +13,7 @@ m4/lcmessage.m4
 
 Depends-on:
 extensions
-stdbool
+c-bool
 locale
 flexmember
 free-posix
diff --git a/modules/long-options b/modules/long-options
index fc0b53eceb..5d3647ffe3 100644
--- a/modules/long-options
+++ b/modules/long-options
@@ -6,10 +6,10 @@ lib/long-options.h
 lib/long-options.c
 
 Depends-on:
+c-bool
 c99
 exitfail
 getopt-gnu
-stdbool
 stdlib
 version-etc
 
diff --git a/modules/lstat-tests b/modules/lstat-tests
index 911a7ff627..c671b77510 100644
--- a/modules/lstat-tests
+++ b/modules/lstat-tests
@@ -5,10 +5,10 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
 errno
 same-inode
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/map b/modules/map
index 0b611ed1cc..91312c25d3 100644
--- a/modules/map
+++ b/modules/map
@@ -6,8 +6,8 @@ lib/gl_map.h
 lib/gl_map.c
 
 Depends-on:
+c-bool
 extern-inline
-stdbool
 
 configure.ac:
 
diff --git a/modules/mbchar b/modules/mbchar
index b1fa0fa4ac..fc9cb8e76b 100644
--- a/modules/mbchar
+++ b/modules/mbchar
@@ -9,7 +9,7 @@ m4/mbchar.m4
 Depends-on:
 extensions
 extern-inline
-stdbool
+c-bool
 wchar
 wctype-h
 iswblank
diff --git a/modules/mbfile b/modules/mbfile
index df169979a4..c4d7639efe 100644
--- a/modules/mbfile
+++ b/modules/mbfile
@@ -13,7 +13,7 @@ mbchar
 mbrtowc
 mbsinit
 wchar
-stdbool
+c-bool
 
 configure.ac:
 gl_MBFILE
diff --git a/modules/mbiter b/modules/mbiter
index 4b36756c25..5e48b23c7b 100644
--- a/modules/mbiter
+++ b/modules/mbiter
@@ -13,7 +13,7 @@ mbchar
 mbrtowc
 mbsinit
 wchar
-stdbool
+c-bool
 
 configure.ac:
 gl_MBITER
diff --git a/modules/mbmemcasecmp-tests b/modules/mbmemcasecmp-tests
index fea2084612..ec8f015b4f 100644
--- a/modules/mbmemcasecmp-tests
+++ b/modules/mbmemcasecmp-tests
@@ -10,7 +10,7 @@ m4/locale-tr.m4
 m4/codeset.m4
 
 Depends-on:
-stdbool
+c-bool
 setlocale
 
 configure.ac:
diff --git a/modules/mbmemcasecoll b/modules/mbmemcasecoll
index db20df0ee7..3daa03b7e6 100644
--- a/modules/mbmemcasecoll
+++ b/modules/mbmemcasecoll
@@ -7,7 +7,7 @@ lib/mbmemcasecoll.h
 lib/mbmemcasecoll.c
 
 Depends-on:
-stdbool
+c-bool
 malloca
 mbrtowc
 wcrtomb
diff --git a/modules/mbmemcasecoll-tests b/modules/mbmemcasecoll-tests
index 5201618048..7031f8e630 100644
--- a/modules/mbmemcasecoll-tests
+++ b/modules/mbmemcasecoll-tests
@@ -10,7 +10,7 @@ m4/locale-tr.m4
 m4/codeset.m4
 
 Depends-on:
-stdbool
+c-bool
 setlocale
 
 configure.ac:
diff --git a/modules/mbscasestr b/modules/mbscasestr
index b636b4802e..31213fa1dd 100644
--- a/modules/mbscasestr
+++ b/modules/mbscasestr
@@ -7,7 +7,7 @@ lib/str-kmp.h
 
 Depends-on:
 mbuiter
-stdbool
+c-bool
 string
 mbslen
 malloca
diff --git a/modules/mbsstr b/modules/mbsstr
index 8547e0971e..2d922c83e5 100644
--- a/modules/mbsstr
+++ b/modules/mbsstr
@@ -7,7 +7,7 @@ lib/str-kmp.h
 
 Depends-on:
 mbuiter
-stdbool
+c-bool
 string
 mbslen
 malloca
diff --git a/modules/mbuiter b/modules/mbuiter
index 25d1d9fc78..bbbf06735c 100644
--- a/modules/mbuiter
+++ b/modules/mbuiter
@@ -13,7 +13,7 @@ mbchar
 mbrtowc
 mbsinit
 wchar
-stdbool
+c-bool
 strnlen1
 
 configure.ac:
diff --git a/modules/mkdir-p b/modules/mkdir-p
index a9df81aed8..c7233740c1 100644
--- a/modules/mkdir-p
+++ b/modules/mkdir-p
@@ -9,6 +9,7 @@ lib/mkdir-p.h
 m4/mkdir-p.m4
 
 Depends-on:
+c-bool
 error
 fcntl-h
 fstat
@@ -21,7 +22,6 @@ quote
 savewd
 stat
 stat-macros
-stdbool
 sys_stat
 
 configure.ac:
diff --git a/modules/mkdir-tests b/modules/mkdir-tests
index fea1b63e18..fbf7c46b00 100644
--- a/modules/mkdir-tests
+++ b/modules/mkdir-tests
@@ -5,8 +5,8 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/mkfifo-tests b/modules/mkfifo-tests
index 00ca98f97e..a038a2a70d 100644
--- a/modules/mkfifo-tests
+++ b/modules/mkfifo-tests
@@ -5,8 +5,8 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/mknod-tests b/modules/mknod-tests
index e35ffec7c6..eda7901706 100644
--- a/modules/mknod-tests
+++ b/modules/mknod-tests
@@ -5,8 +5,8 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/modechange b/modules/modechange
index b5b86a4186..73a3af0bce 100644
--- a/modules/modechange
+++ b/modules/modechange
@@ -8,9 +8,9 @@ lib/modechange.c
 m4/modechange.m4
 
 Depends-on:
+c-bool
 stat
 stat-macros
-stdbool
 sys_stat
 xalloc
 
diff --git a/modules/mountlist b/modules/mountlist
index f61038ec15..2727b134cc 100644
--- a/modules/mountlist
+++ b/modules/mountlist
@@ -8,12 +8,12 @@ m4/fstypename.m4
 m4/mountlist.m4
 
 Depends-on:
+c-bool
 fopen-gnu
 free-posix
 getline
 open
 unlocked-io-internal
-stdbool
 stdint
 strstr-simple
 xalloc
diff --git a/modules/nanosleep b/modules/nanosleep
index a8d0c76744..d094e74a5f 100644
--- a/modules/nanosleep
+++ b/modules/nanosleep
@@ -9,9 +9,9 @@ Depends-on:
 time
 extensions
 multiarch
+c-bool          [test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1]
 intprops        [test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1]
 pselect         [test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1]
-stdbool         [test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1]
 sys_select      [test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1]
 verify          [test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1]
 
diff --git a/modules/nonblocking b/modules/nonblocking
index b4ddb78f81..25a7e7952c 100644
--- a/modules/nonblocking
+++ b/modules/nonblocking
@@ -10,10 +10,10 @@ lib/stdio-write.c
 m4/asm-underscore.m4
 
 Depends-on:
+c-bool
 fcntl-h
 ioctl
 msvc-nothrow
-stdbool
 stdio
 sys_socket
 unistd
diff --git a/modules/nonblocking-pipe-tests b/modules/nonblocking-pipe-tests
index 93ed45f929..f1946267ba 100644
--- a/modules/nonblocking-pipe-tests
+++ b/modules/nonblocking-pipe-tests
@@ -9,7 +9,7 @@ tests/test-nonblocking-misc.h
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 unistd
 nonblocking
 wait-process
diff --git a/modules/nonblocking-socket-tests b/modules/nonblocking-socket-tests
index e2545ea082..8bc6bc4139 100644
--- a/modules/nonblocking-socket-tests
+++ b/modules/nonblocking-socket-tests
@@ -11,7 +11,7 @@ tests/socket-client.h
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 unistd
 sys_socket
 nonblocking
diff --git a/modules/nstrftime b/modules/nstrftime
index a24af8dcb3..cfae585eb3 100644
--- a/modules/nstrftime
+++ b/modules/nstrftime
@@ -9,12 +9,12 @@ m4/nstrftime.m4
 
 Depends-on:
 attribute
+c-bool
 c99
 errno
 extensions
 intprops
 libc-config
-stdbool
 time_rz
 
 configure.ac:
diff --git a/modules/omap b/modules/omap
index b10344bc91..799f6a53e6 100644
--- a/modules/omap
+++ b/modules/omap
@@ -6,8 +6,8 @@ lib/gl_omap.h
 lib/gl_omap.c
 
 Depends-on:
+c-bool
 extern-inline
-stdbool
 
 configure.ac:
 
diff --git a/modules/open-tests b/modules/open-tests
index b2b6710e5c..81bca6eaea 100644
--- a/modules/open-tests
+++ b/modules/open-tests
@@ -5,7 +5,7 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 fcntl
 symlink
 
diff --git a/modules/openat b/modules/openat
index ed020c1ac8..39fdbb6b7c 100644
--- a/modules/openat
+++ b/modules/openat
@@ -12,8 +12,8 @@ Depends-on:
 fcntl-h
 extensions
 largefile
+c-bool          [test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1]
 openat-h        [test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1]
-stdbool         [test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1]
 sys_stat        [test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1]
 cloexec         [test $REPLACE_OPENAT = 1]
 fstat           [test $REPLACE_OPENAT = 1]
diff --git a/modules/openat-h b/modules/openat-h
index 6165dff9f6..aa9c84e0d3 100644
--- a/modules/openat-h
+++ b/modules/openat-h
@@ -5,9 +5,9 @@ Files:
 lib/openat.h
 
 Depends-on:
+c-bool
 extern-inline
 fcntl-h
-stdbool
 sys_stat
 unistd
 
diff --git a/modules/oset b/modules/oset
index 82d9462d1d..b904f303f0 100644
--- a/modules/oset
+++ b/modules/oset
@@ -6,8 +6,8 @@ lib/gl_oset.h
 lib/gl_oset.c
 
 Depends-on:
+c-bool
 extern-inline
-stdbool
 
 configure.ac:
 
diff --git a/modules/parse-datetime b/modules/parse-datetime
index 8a2d050dee..61887cb970 100644
--- a/modules/parse-datetime
+++ b/modules/parse-datetime
@@ -11,8 +11,8 @@ m4/parse-datetime.m4
 Depends-on:
 bison
 c99
+c-bool
 c-ctype
-stdbool
 gettime
 gettext-h
 idx
diff --git a/modules/pipe-filter-gi b/modules/pipe-filter-gi
index 42c85ffdeb..9b4ef6af0a 100644
--- a/modules/pipe-filter-gi
+++ b/modules/pipe-filter-gi
@@ -10,12 +10,12 @@ lib/pipe-filter-aux.c
 Depends-on:
 spawn-pipe
 wait-process
+c-bool
 error
 extern-inline
 fcntl-h
 free-posix
 gettext-h
-stdbool
 stdint
 stdlib
 sys_select
diff --git a/modules/pipe-filter-ii b/modules/pipe-filter-ii
index 65a0a02547..1cdbfedf31 100644
--- a/modules/pipe-filter-ii
+++ b/modules/pipe-filter-ii
@@ -10,11 +10,11 @@ lib/pipe-filter-aux.c
 Depends-on:
 spawn-pipe
 wait-process
+c-bool
 error
 extern-inline
 fcntl-h
 gettext-h
-stdbool
 stdint
 stdlib
 sys_select
diff --git a/modules/pipe-posix-tests b/modules/pipe-posix-tests
index 3f428a0613..e9b0bc47a6 100644
--- a/modules/pipe-posix-tests
+++ b/modules/pipe-posix-tests
@@ -4,7 +4,7 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 binary-io
 msvc-nothrow
 
diff --git a/modules/pipe2-tests b/modules/pipe2-tests
index 74f9d5f3e3..81ef6564cf 100644
--- a/modules/pipe2-tests
+++ b/modules/pipe2-tests
@@ -4,7 +4,7 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 msvc-nothrow
 
 configure.ac:
diff --git a/modules/poll-tests b/modules/poll-tests
index 39d9e04fcd..c4e706ac8d 100644
--- a/modules/poll-tests
+++ b/modules/poll-tests
@@ -4,7 +4,7 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 sys_socket
 netinet_in
 arpa_inet
diff --git a/modules/posix_spawn-internal b/modules/posix_spawn-internal
index 9dfe24cc66..4b4f522e97 100644
--- a/modules/posix_spawn-internal
+++ b/modules/posix_spawn-internal
@@ -16,6 +16,7 @@ sh-filename
 strchrnul
 unistd
 filename        [test $HAVE_POSIX_SPAWN = 0]
+c-bool          [test $HAVE_POSIX_SPAWN = 0]
 concat-filename [test $HAVE_POSIX_SPAWN = 0]
 findprog-in     [test $HAVE_POSIX_SPAWN = 0]
 free-posix      [test $HAVE_POSIX_SPAWN = 0]
diff --git a/modules/posix_spawn-tests b/modules/posix_spawn-tests
index ee505c0389..038406aae6 100644
--- a/modules/posix_spawn-tests
+++ b/modules/posix_spawn-tests
@@ -13,7 +13,7 @@ Depends-on:
 posix_spawn_file_actions_init
 posix_spawn_file_actions_addopen
 posix_spawn_file_actions_destroy
-stdbool
+c-bool
 unistd
 sys_wait
 environ
diff --git a/modules/posix_spawn_file_actions_addfchdir-tests b/modules/posix_spawn_file_actions_addfchdir-tests
index d32dbba2ae..638badc465 100644
--- a/modules/posix_spawn_file_actions_addfchdir-tests
+++ b/modules/posix_spawn_file_actions_addfchdir-tests
@@ -9,7 +9,7 @@ Depends-on:
 posix_spawn_file_actions_init
 posix_spawn_file_actions_destroy
 posix_spawnp-tests
-stdbool
+c-bool
 findprog
 
 configure.ac:
diff --git a/modules/posix_spawnp-tests b/modules/posix_spawnp-tests
index 4ac569e318..b6fc716530 100644
--- a/modules/posix_spawnp-tests
+++ b/modules/posix_spawnp-tests
@@ -19,7 +19,7 @@ posix_spawnattr_init
 posix_spawnattr_setsigmask
 posix_spawnattr_setflags
 posix_spawnattr_destroy
-stdbool
+c-bool
 unistd
 sys_wait
 dup
diff --git a/modules/posixtm b/modules/posixtm
index f302efac63..8751051df4 100644
--- a/modules/posixtm
+++ b/modules/posixtm
@@ -7,10 +7,10 @@ lib/posixtm.c
 m4/posixtm.m4
 
 Depends-on:
+c-bool
 c-ctype
 idx
 mktime
-stdbool
 stdckdint
 verify
 
diff --git a/modules/priv-set b/modules/priv-set
index 0c0b15608c..5ae74cf869 100644
--- a/modules/priv-set
+++ b/modules/priv-set
@@ -7,9 +7,9 @@ lib/priv-set.c
 m4/priv-set.m4
 
 Depends-on:
+c-bool
 errno
 extern-inline
-stdbool
 
 configure.ac:
 gl_PRIV_SET
diff --git a/modules/propername b/modules/propername
index fb1e78a9b2..b05121dcb1 100644
--- a/modules/propername
+++ b/modules/propername
@@ -6,7 +6,7 @@ lib/propername.h
 lib/propername.c
 
 Depends-on:
-stdbool
+c-bool
 trim
 mbsstr
 mbchar
diff --git a/modules/pselect-tests b/modules/pselect-tests
index 0c37ff6abf..6b9ec36d84 100644
--- a/modules/pselect-tests
+++ b/modules/pselect-tests
@@ -5,7 +5,7 @@ tests/macros.h
 tests/signature.h
 
 Depends-on:
-stdbool
+c-bool
 netinet_in
 arpa_inet
 unistd
diff --git a/modules/pthread-spin b/modules/pthread-spin
index 35e3aa701e..741590780b 100644
--- a/modules/pthread-spin
+++ b/modules/pthread-spin
@@ -7,7 +7,7 @@ m4/pthread-spin.m4
 
 Depends-on:
 pthread-h
-stdbool         [test $HAVE_PTHREAD_SPIN_INIT = 0 || test $REPLACE_PTHREAD_SPIN_INIT = 1]
+c-bool          [test $HAVE_PTHREAD_SPIN_INIT = 0 || test $REPLACE_PTHREAD_SPIN_INIT = 1]
 windows-spin    [test $gl_threads_api = windows]
 
 configure.ac:
diff --git a/modules/quotearg b/modules/quotearg
index 6f5356dcc6..330eae597d 100644
--- a/modules/quotearg
+++ b/modules/quotearg
@@ -11,6 +11,7 @@ m4/quotearg.m4
 
 Depends-on:
 attribute
+c-bool
 c-strcaseeq
 extensions
 gettext-h
@@ -20,7 +21,6 @@ memcmp
 minmax
 quotearg-simple
 localcharset
-stdbool
 stdint
 wchar
 wctype-h
diff --git a/modules/readlink-tests b/modules/readlink-tests
index cbd84a5349..beaa973e39 100644
--- a/modules/readlink-tests
+++ b/modules/readlink-tests
@@ -5,8 +5,8 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/readtokens b/modules/readtokens
index 2496a96a5b..b9ea1e636f 100644
--- a/modules/readtokens
+++ b/modules/readtokens
@@ -7,8 +7,8 @@ lib/readtokens.c
 m4/readtokens.m4
 
 Depends-on:
+c-bool
 xalloc
-stdbool
 
 configure.ac:
 gl_READTOKENS
diff --git a/modules/readtokens0 b/modules/readtokens0
index a7b563129d..e2b538b2a0 100644
--- a/modules/readtokens0
+++ b/modules/readtokens0
@@ -6,8 +6,8 @@ lib/readtokens0.h
 lib/readtokens0.c
 
 Depends-on:
+c-bool
 obstack
-stdbool
 
 configure.ac:
 
diff --git a/modules/readutmp b/modules/readutmp
index 2a4a4ffc68..20d00bc1b0 100644
--- a/modules/readutmp
+++ b/modules/readutmp
@@ -7,9 +7,9 @@ lib/readutmp.c
 m4/readutmp.m4
 
 Depends-on:
+c-bool
 extensions
 xalloc
-stdbool
 stdint
 fopen-gnu
 unlocked-io-internal
diff --git a/modules/regex b/modules/regex
index b780427221..d325aa8353 100644
--- a/modules/regex
+++ b/modules/regex
@@ -23,6 +23,7 @@ vararrays
 attribute       [test $ac_use_included_regex = yes]
 btowc           [test $ac_use_included_regex = yes]
 builtin-expect  [test $ac_use_included_regex = yes]
+c-bool          [test $ac_use_included_regex = yes]
 dynarray        [test $ac_use_included_regex = yes]
 intprops        [test $ac_use_included_regex = yes]
 iswctype        [test $ac_use_included_regex = yes]
@@ -34,7 +35,6 @@ memmove         [test $ac_use_included_regex = yes]
 mbrtowc         [test $ac_use_included_regex = yes]
 mbsinit         [test $ac_use_included_regex = yes]
 nl_langinfo     [test $ac_use_included_regex = yes]
-stdbool         [test $ac_use_included_regex = yes]
 stdint          [test $ac_use_included_regex = yes]
 verify          [test $ac_use_included_regex = yes]
 wchar           [test $ac_use_included_regex = yes]
diff --git a/modules/regex-quote b/modules/regex-quote
index 9ffa6aec60..2b54b5bf34 100644
--- a/modules/regex-quote
+++ b/modules/regex-quote
@@ -6,7 +6,7 @@ lib/regex-quote.h
 lib/regex-quote.c
 
 Depends-on:
-stdbool
+c-bool
 xalloc
 mbuiter
 
diff --git a/modules/relocatable-prog b/modules/relocatable-prog
index 8e22b20dd0..8ffaad9eb1 100644
--- a/modules/relocatable-prog
+++ b/modules/relocatable-prog
@@ -21,7 +21,7 @@ canonicalize-lgpl
 xalloc
 xreadlink
 open
-stdbool
+c-bool
 unistd
 memcmp
 strdup
diff --git a/modules/relocatable-prog-wrapper b/modules/relocatable-prog-wrapper
index 9b9d9c3abe..983b910faa 100644
--- a/modules/relocatable-prog-wrapper
+++ b/modules/relocatable-prog-wrapper
@@ -51,6 +51,7 @@ m4/relocatable-lib.m4
 m4/setenv.m4
 
 Depends-on:
+c-bool
 c99
 double-slash-root
 eloop-threshold
diff --git a/modules/rename b/modules/rename
index d06d4c6f25..198133a917 100644
--- a/modules/rename
+++ b/modules/rename
@@ -7,6 +7,7 @@ m4/rename.m4
 
 Depends-on:
 stdio
+c-bool            [test $REPLACE_RENAME = 1]
 canonicalize-lgpl [test $REPLACE_RENAME = 1]
 chdir             [test $REPLACE_RENAME = 1]
 dirname-lgpl      [test $REPLACE_RENAME = 1]
@@ -15,7 +16,6 @@ lstat             [test $REPLACE_RENAME = 1]
 rmdir             [test $REPLACE_RENAME = 1]
 same-inode        [test $REPLACE_RENAME = 1]
 stat              [test $REPLACE_RENAME = 1]
-stdbool           [test $REPLACE_RENAME = 1]
 strdup            [test $REPLACE_RENAME = 1]
 
 configure.ac:
diff --git a/modules/rename-tests b/modules/rename-tests
index b3cd9733bc..4a31c9dd63 100644
--- a/modules/rename-tests
+++ b/modules/rename-tests
@@ -5,10 +5,10 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
 errno
 link
-stdbool
 symlink
 sys_stat
 opendir
diff --git a/modules/renameatu b/modules/renameatu
index 3fc68a91dc..a5a92c1aff 100644
--- a/modules/renameatu
+++ b/modules/renameatu
@@ -13,9 +13,9 @@ extensions
 fcntl-h
 filenamecat-lgpl [test $HAVE_RENAMEAT = 0 || test $REPLACE_RENAMEAT = 1]
 openat-h         [test $HAVE_RENAMEAT = 0 || test $REPLACE_RENAMEAT = 1]
+c-bool           [test $REPLACE_RENAMEAT = 1]
 fstatat          [test $REPLACE_RENAMEAT = 1]
 readlinkat       [test $REPLACE_RENAMEAT = 1]
-stdbool          [test $REPLACE_RENAMEAT = 1]
 at-internal      [test $HAVE_RENAMEAT = 0]
 filename         [test $HAVE_RENAMEAT = 0]
 fstat            [test $HAVE_RENAMEAT = 0]
diff --git a/modules/rmdir-tests b/modules/rmdir-tests
index 19a5240ef2..c929b33a83 100644
--- a/modules/rmdir-tests
+++ b/modules/rmdir-tests
@@ -5,8 +5,8 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/round-tests b/modules/round-tests
index 2c4b37bf6e..8bef27a614 100644
--- a/modules/round-tests
+++ b/modules/round-tests
@@ -8,8 +8,8 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 isnand-nolibm
-stdbool
 stdint
 verify
 
diff --git a/modules/roundf-tests b/modules/roundf-tests
index cd8af30202..1462762789 100644
--- a/modules/roundf-tests
+++ b/modules/roundf-tests
@@ -9,10 +9,10 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ceilf
 floorf
 isnanf-nolibm
-stdbool
 stdint
 verify
 
diff --git a/modules/rpmatch b/modules/rpmatch
index 7f8d9910ab..361b33b68e 100644
--- a/modules/rpmatch
+++ b/modules/rpmatch
@@ -8,7 +8,7 @@ m4/rpmatch.m4
 Depends-on:
 stdlib
 extensions
-stdbool         [test $HAVE_RPMATCH = 0]
+c-bool          [test $HAVE_RPMATCH = 0]
 gettext-h       [test $HAVE_RPMATCH = 0]
 regex           [test $HAVE_RPMATCH = 0]
 strdup          [test $HAVE_RPMATCH = 0]
@@ -38,4 +38,3 @@ GPL
 
 Maintainer:
 Jim Meyering
-
diff --git a/modules/same b/modules/same
index 979cdcd5b8..a02037238c 100644
--- a/modules/same
+++ b/modules/same
@@ -8,6 +8,7 @@ lib/same.c
 m4/same.m4
 
 Depends-on:
+c-bool
 c99
 error
 dirname
@@ -15,7 +16,6 @@ fstat
 fstatat
 openat
 same-inode
-stdbool
 memcmp
 
 configure.ac:
diff --git a/modules/save-cwd b/modules/save-cwd
index 52bf3311df..fdf38e0c36 100644
--- a/modules/save-cwd
+++ b/modules/save-cwd
@@ -7,12 +7,12 @@ lib/save-cwd.c
 m4/save-cwd.m4
 
 Depends-on:
+c-bool
 chdir-long
 fchdir
 fd-safer-flag
 getcwd-lgpl
 open
-stdbool
 unistd-safer
 
 configure.ac:
diff --git a/modules/savewd b/modules/savewd
index a0ea64fe6e..fc04eea122 100644
--- a/modules/savewd
+++ b/modules/savewd
@@ -9,6 +9,7 @@ m4/savewd.m4
 Depends-on:
 assure
 attribute
+c-bool
 chdir
 errno
 extern-inline
@@ -17,7 +18,6 @@ fcntl-safer
 fcntl-h
 filename
 raise
-stdbool
 stdlib
 sys_wait
 unistd
diff --git a/modules/scratch_buffer b/modules/scratch_buffer
index 921c8f5497..ebeedfe3ed 100644
--- a/modules/scratch_buffer
+++ b/modules/scratch_buffer
@@ -10,6 +10,7 @@ lib/malloc/scratch_buffer_grow_preserve.c
 lib/malloc/scratch_buffer_set_array_size.c
 
 Depends-on:
+c-bool
 c99
 builtin-expect
 gen-header
diff --git a/modules/select-tests b/modules/select-tests
index 899b50cddf..cb44b4eb55 100644
--- a/modules/select-tests
+++ b/modules/select-tests
@@ -9,7 +9,7 @@ tests/test-select-out.sh
 tests/test-select-stdin.c
 
 Depends-on:
-stdbool
+c-bool
 sys_socket
 netinet_in
 arpa_inet
diff --git a/modules/set b/modules/set
index 29cec7456a..09992e1037 100644
--- a/modules/set
+++ b/modules/set
@@ -6,8 +6,8 @@ lib/gl_set.h
 lib/gl_set.c
 
 Depends-on:
+c-bool
 extern-inline
-stdbool
 
 configure.ac:
 
diff --git a/modules/spawn-pipe b/modules/spawn-pipe
index b2b343c093..7a4c20e38e 100644
--- a/modules/spawn-pipe
+++ b/modules/spawn-pipe
@@ -9,6 +9,7 @@ lib/os2-spawn.c
 m4/spawn-pipe.m4
 
 Depends-on:
+c-bool
 dup2
 canonicalize
 environ
@@ -36,7 +37,6 @@ posix_spawnattr_setpgroup
 posix_spawnattr_setsigmask
 posix_spawnattr_setflags
 posix_spawnattr_destroy
-stdbool
 stdlib
 unistd
 unistd-safer
diff --git a/modules/spawn-pipe-tests b/modules/spawn-pipe-tests
index 64bcde2b59..5b776add22 100644
--- a/modules/spawn-pipe-tests
+++ b/modules/spawn-pipe-tests
@@ -10,9 +10,9 @@ tests/qemu.h
 tests/macros.h
 
 Depends-on:
+c-bool
 close
 msvc-inval
-stdbool
 stdint
 
 configure.ac:
diff --git a/modules/stack b/modules/stack
index 95f2ce9b9d..dea5b2c414 100644
--- a/modules/stack
+++ b/modules/stack
@@ -6,7 +6,7 @@ lib/stack.h
 
 Depends-on:
 assure
-stdbool
+c-bool
 stdlib
 xalloc
 
diff --git a/modules/stat b/modules/stat
index 96d7a03fd5..a7b6e5ae1f 100644
--- a/modules/stat
+++ b/modules/stat
@@ -10,11 +10,11 @@ m4/stat.m4
 Depends-on:
 sys_stat
 largefile
+c-bool          [test $REPLACE_STAT = 1]
 filename        [test $REPLACE_STAT = 1]
 malloca         [test $REPLACE_STAT = 1]
 pathmax         [test $REPLACE_STAT = 1]
 stat-time       [test $REPLACE_STAT = 1]
-stdbool         [test $REPLACE_STAT = 1]
 verify          [test $REPLACE_STAT = 1]
 
 configure.ac:
diff --git a/modules/stat-tests b/modules/stat-tests
index 60ecc174a4..f4fb860ee8 100644
--- a/modules/stat-tests
+++ b/modules/stat-tests
@@ -5,9 +5,9 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 getcwd-lgpl
 same-inode
-stdbool
 symlink
 
 configure.ac:
diff --git a/modules/stdckdint b/modules/stdckdint
index d2d3a11a5c..6b04dd4eda 100644
--- a/modules/stdckdint
+++ b/modules/stdckdint
@@ -6,8 +6,8 @@ lib/stdckdint.in.h
 lib/intprops-internal.h
 
 Depends-on:
+c-bool
 gen-header
-stdbool
 
 configure.ac:
 AC_CHECK_HEADERS_ONCE([stdckdint.h])
diff --git a/modules/stdckdint-tests b/modules/stdckdint-tests
index fb809dac3e..75a1b36eed 100644
--- a/modules/stdckdint-tests
+++ b/modules/stdckdint-tests
@@ -4,8 +4,8 @@ tests/test-intprops.c
 tests/test-stdckdint.c
 
 Depends-on:
+c-bool
 inttypes
-stdbool
 verify
 stdckdint-c++-tests
 
diff --git a/modules/strcasestr b/modules/strcasestr
index ed7b327ec2..c7ec370b60 100644
--- a/modules/strcasestr
+++ b/modules/strcasestr
@@ -5,6 +5,7 @@ Files:
 lib/strcasestr.c
 
 Depends-on:
+c-bool
 strcasestr-simple
 
 configure.ac:
diff --git a/modules/strcasestr-simple b/modules/strcasestr-simple
index 3c8869d78d..d396072374 100644
--- a/modules/strcasestr-simple
+++ b/modules/strcasestr-simple
@@ -7,8 +7,8 @@ lib/str-two-way.h
 m4/strcasestr.m4
 
 Depends-on:
+c-bool
 string
-stdbool
 strcase
 memchr
 memcmp
diff --git a/modules/strfmon_l b/modules/strfmon_l
index 31dafe748d..a16d258eea 100644
--- a/modules/strfmon_l
+++ b/modules/strfmon_l
@@ -10,7 +10,7 @@ m4/codeset.m4
 Depends-on:
 monetary
 extensions
-stdbool         [test $REPLACE_STRFMON_L = 1]
+c-bool         [test $REPLACE_STRFMON_L = 1]
 
 configure.ac:
 gl_FUNC_STRFMON_L
diff --git a/modules/striconveh b/modules/striconveh
index 558e7c6f93..3720365c27 100644
--- a/modules/striconveh
+++ b/modules/striconveh
@@ -7,7 +7,7 @@ lib/striconveh.c
 lib/iconveh.h
 
 Depends-on:
-stdbool
+c-bool
 iconv
 iconv_open
 unistr/u8-prev
diff --git a/modules/striconveha b/modules/striconveha
index 7e8ad88977..1c7e7e4655 100644
--- a/modules/striconveha
+++ b/modules/striconveha
@@ -7,7 +7,7 @@ lib/striconveha.h
 lib/striconveha.c
 
 Depends-on:
-stdbool
+c-bool
 striconveh
 malloca
 strdup
diff --git a/modules/string-buffer b/modules/string-buffer
index 54da1db988..67ddaed150 100644
--- a/modules/string-buffer
+++ b/modules/string-buffer
@@ -6,7 +6,7 @@ lib/string-buffer.h
 lib/string-buffer.c
 
 Depends-on:
-stdbool
+c-bool
 attribute
 stdarg
 vsnprintf-posix
diff --git a/modules/strptime b/modules/strptime
index bcbfa27782..0e1eeecef8 100644
--- a/modules/strptime
+++ b/modules/strptime
@@ -9,10 +9,10 @@ m4/tm_gmtoff.m4
 Depends-on:
 time
 extensions
+c-bool          [test $HAVE_STRPTIME = 0]
 sys_time        [test $HAVE_STRPTIME = 0]
 string          [test $HAVE_STRPTIME = 0]
 strcase         [test $HAVE_STRPTIME = 0]
-stdbool         [test $HAVE_STRPTIME = 0]
 time_r          [test $HAVE_STRPTIME = 0]
 
 configure.ac:
diff --git a/modules/strstr-simple b/modules/strstr-simple
index bd52b17310..58642dbf2f 100644
--- a/modules/strstr-simple
+++ b/modules/strstr-simple
@@ -8,8 +8,8 @@ m4/strstr.m4
 
 Depends-on:
 string
+c-bool          [test $REPLACE_STRSTR = 1]
 builtin-expect  [test $REPLACE_STRSTR = 1]
-stdbool         [test $REPLACE_STRSTR = 1]
 memchr          [test $REPLACE_STRSTR = 1]
 memcmp          [test $REPLACE_STRSTR = 1]
 
diff --git a/modules/strtod b/modules/strtod
index 7fcea82a30..1a2cb16760 100644
--- a/modules/strtod
+++ b/modules/strtod
@@ -9,9 +9,9 @@ m4/ldexp.m4
 Depends-on:
 stdlib
 strtod-obsolete
+c-bool          [test $HAVE_STRTOD = 0 || test $REPLACE_STRTOD = 1]
 c-ctype         [test $HAVE_STRTOD = 0 || test $REPLACE_STRTOD = 1]
 math            [test $HAVE_STRTOD = 0 || test $REPLACE_STRTOD = 1]
-stdbool         [test $HAVE_STRTOD = 0 || test $REPLACE_STRTOD = 1]
 
 configure.ac:
 gl_FUNC_STRTOD
diff --git a/modules/strtold b/modules/strtold
index ee637cb464..29315eda69 100644
--- a/modules/strtold
+++ b/modules/strtold
@@ -10,9 +10,9 @@ m4/ldexpl.m4
 
 Depends-on:
 stdlib
+c-bool          [test $HAVE_STRTOLD = 0 || test $REPLACE_STRTOLD = 1]
 c-ctype         [test $HAVE_STRTOLD = 0 || test $REPLACE_STRTOLD = 1]
 math            [test $HAVE_STRTOLD = 0 || test $REPLACE_STRTOLD = 1]
-stdbool         [test $HAVE_STRTOLD = 0 || test $REPLACE_STRTOLD = 1]
 strtod          [{ test $HAVE_STRTOLD = 0 || test $REPLACE_STRTOLD = 1; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 1]
 
 configure.ac:
diff --git a/modules/supersede b/modules/supersede
index 4dbe887648..aeae712b00 100644
--- a/modules/supersede
+++ b/modules/supersede
@@ -7,6 +7,7 @@ lib/supersede.c
 m4/supersede.m4
 
 Depends-on:
+c-bool
 c99
 fcntl-h
 sys_stat
diff --git a/modules/symlink-tests b/modules/symlink-tests
index a07074e325..4d317878ff 100644
--- a/modules/symlink-tests
+++ b/modules/symlink-tests
@@ -5,8 +5,8 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
-stdbool
 
 configure.ac:
 
diff --git a/modules/system-quote b/modules/system-quote
index 9af74dca50..e12826e8f9 100644
--- a/modules/system-quote
+++ b/modules/system-quote
@@ -6,6 +6,7 @@ lib/system-quote.h
 lib/system-quote.c
 
 Depends-on:
+c-bool
 sh-quote
 xalloc
 
diff --git a/modules/system-quote-tests b/modules/system-quote-tests
index 22f08389f6..594e4315a7 100644
--- a/modules/system-quote-tests
+++ b/modules/system-quote-tests
@@ -8,7 +8,7 @@ tests/test-system-quote-child.c
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 unistd
 popen
 pclose
diff --git a/modules/tempname b/modules/tempname
index f1fb78e8ff..fdfb879ed4 100644
--- a/modules/tempname
+++ b/modules/tempname
@@ -8,6 +8,7 @@ lib/tempname.h
 m4/tempname.m4
 
 Depends-on:
+c-bool
 c99
 clock-time
 extensions
@@ -16,7 +17,6 @@ getrandom
 libc-config
 lstat
 mkdir
-stdbool
 stdint
 sys_stat
 time
diff --git a/modules/term-style-control b/modules/term-style-control
index 85d748d75e..856274569a 100644
--- a/modules/term-style-control
+++ b/modules/term-style-control
@@ -6,7 +6,7 @@ lib/term-style-control.h
 lib/term-style-control.c
 
 Depends-on:
-stdbool
+c-bool
 fatal-signal
 sigaction
 sigprocmask
diff --git a/modules/term-style-control-tests b/modules/term-style-control-tests
index 921c42fadd..8dd608ecbb 100644
--- a/modules/term-style-control-tests
+++ b/modules/term-style-control-tests
@@ -3,7 +3,7 @@ tests/test-term-style-control-hello.c
 tests/test-term-style-control-yes.c
 
 Depends-on:
-stdbool
+c-bool
 unistd
 full-write
 
diff --git a/modules/time_rz b/modules/time_rz
index fe8a33e699..76f20c9b91 100644
--- a/modules/time_rz
+++ b/modules/time_rz
@@ -10,10 +10,10 @@ Depends-on:
 c99
 extensions
 time
+c-bool         [test $HAVE_TIMEZONE_T = 0]
 flexmember     [test $HAVE_TIMEZONE_T = 0]
 idx            [test $HAVE_TIMEZONE_T = 0]
 setenv         [test $HAVE_TIMEZONE_T = 0]
-stdbool        [test $HAVE_TIMEZONE_T = 0]
 time_r         [test $HAVE_TIMEZONE_T = 0]
 timegm         [test $HAVE_TIMEZONE_T = 0]
 tzset          [test $HAVE_TIMEZONE_T = 0]
diff --git a/modules/timespec-tests b/modules/timespec-tests
index ecd0dae4fd..fdc4b8dd33 100644
--- a/modules/timespec-tests
+++ b/modules/timespec-tests
@@ -3,9 +3,9 @@ tests/test-timespec.c
 tests/macros.h
 
 Depends-on:
+c-bool
 dtotimespec
 intprops
-stdbool
 timespec-add
 timespec-sub
 
diff --git a/modules/tmpdir b/modules/tmpdir
index 591a741ed0..7ab7bc88fa 100644
--- a/modules/tmpdir
+++ b/modules/tmpdir
@@ -7,9 +7,9 @@ lib/tmpdir.c
 m4/tmpdir.m4
 
 Depends-on:
+c-bool
 secure_getenv
 stat
-stdbool
 sys_stat
 pathmax
 
diff --git a/modules/tmpfile b/modules/tmpfile
index fc65fa581e..c782c6f67a 100644
--- a/modules/tmpfile
+++ b/modules/tmpfile
@@ -8,8 +8,8 @@ m4/tmpfile.m4
 Depends-on:
 stdio
 largefile
+c-bool          [test $REPLACE_TMPFILE = 1]
 pathmax         [test $REPLACE_TMPFILE = 1]
-stdbool         [test $REPLACE_TMPFILE = 1]
 tempname        [test $REPLACE_TMPFILE = 1]
 tmpdir          [test $REPLACE_TMPFILE = 1]
 
diff --git a/modules/trunc-tests b/modules/trunc-tests
index 1ec87d7c57..6bb76b34f1 100644
--- a/modules/trunc-tests
+++ b/modules/trunc-tests
@@ -8,9 +8,9 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 float
 isnand-nolibm
-stdbool
 stdint
 
 configure.ac:
diff --git a/modules/truncf-tests b/modules/truncf-tests
index 1c847e7bfc..4e05ce8fc7 100644
--- a/modules/truncf-tests
+++ b/modules/truncf-tests
@@ -8,9 +8,9 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 float
 isnanf-nolibm
-stdbool
 stdint
 
 configure.ac:
diff --git a/modules/unicase/base b/modules/unicase/base
index f273200f99..4d40f524eb 100644
--- a/modules/unicase/base
+++ b/modules/unicase/base
@@ -6,10 +6,10 @@ lib/unicase.in.h
 m4/libunistring-base.m4
 
 Depends-on:
+c-bool
 gen-header
 unitypes
 uninorm/base
-stdbool
 
 configure.ac:
 gl_LIBUNISTRING_LIBHEADER([0.9.11], [unicase.h])
diff --git a/modules/unicase/cased b/modules/unicase/cased
index 1cdf28873f..8aa06135da 100644
--- a/modules/unicase/cased
+++ b/modules/unicase/cased
@@ -8,8 +8,8 @@ lib/unicase/cased.h
 lib/unictype/bitmap.h
 
 Depends-on:
+c-bool
 unitypes
-stdbool
 
 configure.ac:
 AC_REQUIRE([AC_C_INLINE])
diff --git a/modules/unicase/ignorable b/modules/unicase/ignorable
index 0e1dcb6c5a..4f0b7401e1 100644
--- a/modules/unicase/ignorable
+++ b/modules/unicase/ignorable
@@ -8,8 +8,8 @@ lib/unicase/ignorable.h
 lib/unictype/bitmap.h
 
 Depends-on:
+c-bool
 unitypes
-stdbool
 
 configure.ac:
 AC_REQUIRE([AC_C_INLINE])
diff --git a/modules/unicase/u16-casemap b/modules/unicase/u16-casemap
index fe9f1eaf9d..dc00d5ba2c 100644
--- a/modules/unicase/u16-casemap
+++ b/modules/unicase/u16-casemap
@@ -18,7 +18,7 @@ unistr/u16-mbtouc-unsafe
 unistr/u16-uctomb
 unistr/u16-cpy
 uninorm/u16-normalize
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/unicase/u16-ct-totitle b/modules/unicase/u16-ct-totitle
index 26bb338e0a..bafe5562f1 100644
--- a/modules/unicase/u16-ct-totitle
+++ b/modules/unicase/u16-ct-totitle
@@ -20,7 +20,7 @@ unistr/u16-mbtouc-unsafe
 unistr/u16-uctomb
 unistr/u16-cpy
 uninorm/u16-normalize
-stdbool
+c-bool
 
 configure.ac:
 gl_LIBUNISTRING_MODULE([0.9.11], [unicase/u16-ct-totitle])
diff --git a/modules/unicase/u16-is-invariant b/modules/unicase/u16-is-invariant
index 6cc40f98a2..c15e8769e9 100644
--- a/modules/unicase/u16-is-invariant
+++ b/modules/unicase/u16-is-invariant
@@ -12,7 +12,7 @@ uninorm/base
 uninorm/u16-normalize
 uninorm/nfd
 unistr/u16-cmp
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/unicase/u32-casemap b/modules/unicase/u32-casemap
index d380983f8b..62f3559b79 100644
--- a/modules/unicase/u32-casemap
+++ b/modules/unicase/u32-casemap
@@ -18,7 +18,7 @@ unistr/u32-mbtouc-unsafe
 unistr/u32-uctomb
 unistr/u32-cpy
 uninorm/u32-normalize
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/unicase/u32-ct-totitle b/modules/unicase/u32-ct-totitle
index e87edf8987..80edd32a41 100644
--- a/modules/unicase/u32-ct-totitle
+++ b/modules/unicase/u32-ct-totitle
@@ -20,7 +20,7 @@ unistr/u32-mbtouc-unsafe
 unistr/u32-uctomb
 unistr/u32-cpy
 uninorm/u32-normalize
-stdbool
+c-bool
 
 configure.ac:
 gl_LIBUNISTRING_MODULE([0.9.11], [unicase/u32-ct-totitle])
diff --git a/modules/unicase/u32-is-invariant b/modules/unicase/u32-is-invariant
index 822765142e..acbe536c4d 100644
--- a/modules/unicase/u32-is-invariant
+++ b/modules/unicase/u32-is-invariant
@@ -12,7 +12,7 @@ uninorm/base
 uninorm/u32-normalize
 uninorm/nfd
 unistr/u32-cmp
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/unicase/u8-casemap b/modules/unicase/u8-casemap
index d5334baa2c..5163863c87 100644
--- a/modules/unicase/u8-casemap
+++ b/modules/unicase/u8-casemap
@@ -18,7 +18,7 @@ unistr/u8-mbtouc-unsafe
 unistr/u8-uctomb
 unistr/u8-cpy
 uninorm/u8-normalize
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/unicase/u8-ct-totitle b/modules/unicase/u8-ct-totitle
index f2f3f6b27c..9f55346a9d 100644
--- a/modules/unicase/u8-ct-totitle
+++ b/modules/unicase/u8-ct-totitle
@@ -20,7 +20,7 @@ unistr/u8-mbtouc-unsafe
 unistr/u8-uctomb
 unistr/u8-cpy
 uninorm/u8-normalize
-stdbool
+c-bool
 
 configure.ac:
 gl_LIBUNISTRING_MODULE([0.9.11], [unicase/u8-ct-totitle])
diff --git a/modules/unicase/u8-is-invariant b/modules/unicase/u8-is-invariant
index 0a8759bb83..f358fbab44 100644
--- a/modules/unicase/u8-is-invariant
+++ b/modules/unicase/u8-is-invariant
@@ -12,7 +12,7 @@ uninorm/base
 uninorm/u8-normalize
 uninorm/nfd
 unistr/u8-cmp
-stdbool
+c-bool
 
 configure.ac:
 
diff --git a/modules/uniconv/base b/modules/uniconv/base
index 9f059498c4..33381d7468 100644
--- a/modules/uniconv/base
+++ b/modules/uniconv/base
@@ -9,6 +9,7 @@ lib/localcharset.h
 m4/libunistring-base.m4
 
 Depends-on:
+c-bool
 gen-header
 unitypes
 
diff --git a/modules/unictype/base b/modules/unictype/base
index b2d22f8762..c81937cad3 100644
--- a/modules/unictype/base
+++ b/modules/unictype/base
@@ -6,9 +6,9 @@ lib/unictype.in.h
 m4/libunistring-base.m4
 
 Depends-on:
+c-bool
 gen-header
 unitypes
-stdbool
 
 configure.ac:
 gl_LIBUNISTRING_LIBHEADER([0.9.11], [unictype.h])
diff --git a/modules/unictype/category-byname-tests b/modules/unictype/category-byname-tests
index dac2f3f4e9..aecd0b3d43 100644
--- a/modules/unictype/category-byname-tests
+++ b/modules/unictype/category-byname-tests
@@ -3,7 +3,7 @@ tests/unictype/test-categ_byname.c
 tests/macros.h
 
 Depends-on:
-stdbool
+c-bool
 unictype/category-test
 
 configure.ac:
diff --git a/modules/unigbrk/base b/modules/unigbrk/base
index e0dc3c6bcd..48f7af150a 100644
--- a/modules/unigbrk/base
+++ b/modules/unigbrk/base
@@ -6,9 +6,9 @@ lib/unigbrk.in.h
 m4/libunistring-base.m4
 
 Depends-on:
+c-bool
 gen-header
 unitypes
-stdbool
 
 configure.ac:
 gl_LIBUNISTRING_LIBHEADER([0.9.11], [unigbrk.h])
diff --git a/modules/unigbrk/u16-grapheme-breaks b/modules/unigbrk/u16-grapheme-breaks
index d8e9fec893..0e314ef958 100644
--- a/modules/unigbrk/u16-grapheme-breaks
+++ b/modules/unigbrk/u16-grapheme-breaks
@@ -10,7 +10,7 @@ unigbrk/base
 unigbrk/uc-gbrk-prop
 unictype/property-extended-pictographic
 unistr/u16-mbtouc
-stdbool
+c-bool
 
 configure.ac:
 gl_MODULE_INDICATOR([unigbrk/u16-grapheme-breaks])
diff --git a/modules/unigbrk/u32-grapheme-breaks b/modules/unigbrk/u32-grapheme-breaks
index 151616da53..0bccd44ee6 100644
--- a/modules/unigbrk/u32-grapheme-breaks
+++ b/modules/unigbrk/u32-grapheme-breaks
@@ -10,7 +10,7 @@ unigbrk/base
 unigbrk/uc-gbrk-prop
 unictype/property-extended-pictographic
 unistr/u32-mbtouc
-stdbool
+c-bool
 
 configure.ac:
 gl_MODULE_INDICATOR([unigbrk/u32-grapheme-breaks])
diff --git a/modules/unigbrk/u8-grapheme-breaks b/modules/unigbrk/u8-grapheme-breaks
index 4716e1d0a7..f8745e00b3 100644
--- a/modules/unigbrk/u8-grapheme-breaks
+++ b/modules/unigbrk/u8-grapheme-breaks
@@ -10,7 +10,7 @@ unigbrk/base
 unigbrk/uc-gbrk-prop
 unictype/property-extended-pictographic
 unistr/u8-mbtouc
-stdbool
+c-bool
 
 configure.ac:
 gl_MODULE_INDICATOR([unigbrk/u8-grapheme-breaks])
diff --git a/modules/unigbrk/uc-grapheme-breaks b/modules/unigbrk/uc-grapheme-breaks
index a7186007d2..17f2f9b446 100644
--- a/modules/unigbrk/uc-grapheme-breaks
+++ b/modules/unigbrk/uc-grapheme-breaks
@@ -9,7 +9,7 @@ Depends-on:
 unigbrk/base
 unigbrk/uc-gbrk-prop
 unictype/property-extended-pictographic
-stdbool
+c-bool
 
 configure.ac:
 gl_MODULE_INDICATOR([unigbrk/uc-grapheme-breaks])
diff --git a/modules/unigbrk/uc-is-grapheme-break-tests b/modules/unigbrk/uc-is-grapheme-break-tests
index b31de28f6a..6dc4206d81 100644
--- a/modules/unigbrk/uc-is-grapheme-break-tests
+++ b/modules/unigbrk/uc-is-grapheme-break-tests
@@ -4,8 +4,8 @@ tests/unigbrk/test-uc-is-grapheme-break.sh
 tests/unigbrk/GraphemeBreakTest.txt
 
 Depends-on:
+c-bool
 unictype/property-extended-pictographic
-stdbool
 
 configure.ac:
 
diff --git a/modules/uniname/uniname b/modules/uniname/uniname
index b35437d314..2d533248d0 100644
--- a/modules/uniname/uniname
+++ b/modules/uniname/uniname
@@ -10,6 +10,7 @@ Depends-on:
 uniname/base
 attribute
 memcmp
+c-bool
 c99
 
 configure.ac:
diff --git a/modules/unistd-safer-tests b/modules/unistd-safer-tests
index c1c09dbc91..53f3ae9903 100644
--- a/modules/unistd-safer-tests
+++ b/modules/unistd-safer-tests
@@ -4,13 +4,13 @@ tests/macros.h
 
 Depends-on:
 binary-io
+c-bool
 cloexec
 close
 dup
 fd-safer-flag
 getdtablesize
 msvc-nothrow
-stdbool
 
 configure.ac:
 
diff --git a/modules/unistr/base b/modules/unistr/base
index 47e10d4371..df2fb4d7b4 100644
--- a/modules/unistr/base
+++ b/modules/unistr/base
@@ -8,7 +8,7 @@ m4/libunistring-base.m4
 Depends-on:
 gen-header
 unitypes
-stdbool
+c-bool
 inline
 
 configure.ac:
diff --git a/modules/unistr/u16-strstr b/modules/unistr/u16-strstr
index 501bee5303..e70db7e33f 100644
--- a/modules/unistr/u16-strstr
+++ b/modules/unistr/u16-strstr
@@ -12,7 +12,7 @@ unistr/u16-strchr
 unistr/u16-strmbtouc
 unistr/u16-strlen
 unistr/u16-strnlen
-stdbool
+c-bool
 malloca
 
 configure.ac:
diff --git a/modules/unistr/u32-strstr b/modules/unistr/u32-strstr
index 1fb2fcf498..405e6a960b 100644
--- a/modules/unistr/u32-strstr
+++ b/modules/unistr/u32-strstr
@@ -11,7 +11,7 @@ unistr/base
 unistr/u32-strchr
 unistr/u32-strlen
 unistr/u32-strnlen
-stdbool
+c-bool
 malloca
 
 configure.ac:
diff --git a/modules/unlink-tests b/modules/unlink-tests
index 6a57d49930..1fba91a3f1 100644
--- a/modules/unlink-tests
+++ b/modules/unlink-tests
@@ -5,8 +5,8 @@ tests/signature.h
 tests/macros.h
 
 Depends-on:
+c-bool
 ignore-value
-stdbool
 symlink
 unlinkdir
 
diff --git a/modules/unlinkdir b/modules/unlinkdir
index 6ebd027122..d7053cfe55 100644
--- a/modules/unlinkdir
+++ b/modules/unlinkdir
@@ -7,7 +7,7 @@ lib/unlinkdir.c
 m4/unlinkdir.m4
 
 Depends-on:
-stdbool
+c-bool
 priv-set
 root-uid
 
diff --git a/modules/userspec b/modules/userspec
index ce1ee1792a..41f2d6c484 100644
--- a/modules/userspec
+++ b/modules/userspec
@@ -14,7 +14,7 @@ strdup
 gettext-h
 intprops
 inttostr
-stdbool
+c-bool
 
 configure.ac:
 gl_USERSPEC
diff --git a/modules/utime b/modules/utime
index f09e57346d..85a31ecebd 100644
--- a/modules/utime
+++ b/modules/utime
@@ -8,6 +8,7 @@ m4/utime.m4
 Depends-on:
 utime-h
 time
+c-bool          [test $HAVE_UTIME = 0 || test $REPLACE_UTIME = 1]
 filename        [test $HAVE_UTIME = 0 || test $REPLACE_UTIME = 1]
 malloca         [test $HAVE_UTIME = 0 || test $REPLACE_UTIME = 1]
 stat            [test $HAVE_UTIME = 0 || test $REPLACE_UTIME = 1]
diff --git a/modules/utimecmp b/modules/utimecmp
index dffe861c2d..3480608585 100644
--- a/modules/utimecmp
+++ b/modules/utimecmp
@@ -7,6 +7,7 @@ lib/utimecmp.c
 m4/utimecmp.m4
 
 Depends-on:
+c-bool
 dirname-lgpl
 fstatat
 hash
@@ -14,7 +15,6 @@ stat-time
 time
 utimensat
 intprops
-stdbool
 stdint
 verify
 
diff --git a/modules/utimens b/modules/utimens
index c124cb5cbe..1a3fb5fe6d 100644
--- a/modules/utimens
+++ b/modules/utimens
@@ -8,6 +8,7 @@ m4/utimens.m4
 m4/utimes.m4
 
 Depends-on:
+c-bool
 errno
 extern-inline
 fcntl-h
@@ -17,7 +18,6 @@ gettime
 msvc-nothrow
 stat
 stat-time
-stdbool
 sys_stat
 sys_time
 time
diff --git a/modules/wait-process b/modules/wait-process
index f7271111e7..e399ffab4f 100644
--- a/modules/wait-process
+++ b/modules/wait-process
@@ -8,12 +8,12 @@ m4/wait-process.m4
 m4/sig_atomic_t.m4
 
 Depends-on:
+c-bool
 fatal-signal
 error
 xalloc
 xalloc-die
 gettext-h
-stdbool
 stdlib
 sys_wait
 unistd
diff --git a/modules/windows-cond b/modules/windows-cond
index b370bf989a..3505e0594f 100644
--- a/modules/windows-cond
+++ b/modules/windows-cond
@@ -7,7 +7,7 @@ lib/windows-cond.c
 lib/windows-initguard.h
 
 Depends-on:
-stdbool
+c-bool
 errno
 time
 gettimeofday
diff --git a/modules/windows-spawn b/modules/windows-spawn
index d9415fcb87..ea452c5286 100644
--- a/modules/windows-spawn
+++ b/modules/windows-spawn
@@ -6,9 +6,9 @@ lib/windows-spawn.h
 lib/windows-spawn.c
 
 Depends-on:
+c-bool
 findprog-in
 msvc-nothrow
-stdbool
 stdint
 stdlib
 strpbrk
diff --git a/modules/windows-timedrwlock b/modules/windows-timedrwlock
index f9469b159d..c21cfa26fa 100644
--- a/modules/windows-timedrwlock
+++ b/modules/windows-timedrwlock
@@ -7,6 +7,7 @@ lib/windows-timedrwlock.c
 lib/windows-initguard.h
 
 Depends-on:
+c-bool
 errno
 time
 gettimeofday
diff --git a/modules/write-any-file b/modules/write-any-file
index 7e99265c09..bdd15647e9 100644
--- a/modules/write-any-file
+++ b/modules/write-any-file
@@ -7,7 +7,7 @@ lib/write-any-file.c
 m4/write-any-file.m4
 
 Depends-on:
-stdbool
+c-bool
 priv-set
 root-uid
 
diff --git a/modules/xbinary-io b/modules/xbinary-io
index 7618e375cf..02d38a05bb 100644
--- a/modules/xbinary-io
+++ b/modules/xbinary-io
@@ -7,11 +7,11 @@ lib/xbinary-io.c
 
 Depends-on:
 binary-io
+c-bool
 error
 exitfail
 extern-inline
 gettext-h
-stdbool
 verify
 
 configure.ac:
diff --git a/modules/xgetcwd b/modules/xgetcwd
index 21cef522cf..9660d4fb2d 100644
--- a/modules/xgetcwd
+++ b/modules/xgetcwd
@@ -9,7 +9,6 @@ m4/xgetcwd.m4
 Depends-on:
 getcwd
 xalloc
-stdbool
 
 configure.ac:
 gl_XGETCWD
diff --git a/modules/xlist b/modules/xlist
index e258161b10..c3b39859ca 100644
--- a/modules/xlist
+++ b/modules/xlist
@@ -7,8 +7,8 @@ lib/gl_xlist.c
 
 Depends-on:
 list
+c-bool
 extern-inline
-stdbool
 xalloc-die
 
 configure.ac:
diff --git a/modules/xmap b/modules/xmap
index 2a7ceade73..a50253c255 100644
--- a/modules/xmap
+++ b/modules/xmap
@@ -7,8 +7,8 @@ lib/gl_xmap.c
 
 Depends-on:
 map
+c-bool
 extern-inline
-stdbool
 xalloc-die
 
 configure.ac:
diff --git a/modules/xomap b/modules/xomap
index 196717de1b..b678e3fd8f 100644
--- a/modules/xomap
+++ b/modules/xomap
@@ -7,8 +7,8 @@ lib/gl_xomap.c
 
 Depends-on:
 omap
+c-bool
 extern-inline
-stdbool
 xalloc-die
 
 configure.ac:
diff --git a/modules/xoset b/modules/xoset
index 1bfc2ba624..6dcdbf80b9 100644
--- a/modules/xoset
+++ b/modules/xoset
@@ -7,8 +7,8 @@ lib/gl_xoset.c
 
 Depends-on:
 oset
+c-bool
 extern-inline
-stdbool
 xalloc-die
 
 configure.ac:
diff --git a/modules/xset b/modules/xset
index d78d5fc601..0d23babf06 100644
--- a/modules/xset
+++ b/modules/xset
@@ -7,8 +7,8 @@ lib/gl_xset.c
 
 Depends-on:
 set
+c-bool
 extern-inline
-stdbool
 xalloc-die
 
 configure.ac:
diff --git a/modules/xstrtod b/modules/xstrtod
index 6163365347..ea2a9f1618 100644
--- a/modules/xstrtod
+++ b/modules/xstrtod
@@ -7,7 +7,7 @@ lib/xstrtod.c
 m4/xstrtod.m4
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 gl_XSTRTOD
diff --git a/modules/xstrtold b/modules/xstrtold
index f3c95d013d..bcf7fcdd87 100644
--- a/modules/xstrtold
+++ b/modules/xstrtold
@@ -8,7 +8,7 @@ lib/xstrtold.c
 m4/xstrtod.m4
 
 Depends-on:
-stdbool
+c-bool
 
 configure.ac:
 gl_XSTRTOLD
diff --git a/modules/yesno b/modules/yesno
index 7a45e0f8bb..40a6ecc393 100644
--- a/modules/yesno
+++ b/modules/yesno
@@ -8,9 +8,9 @@ lib/yesno.h
 m4/yesno.m4
 
 Depends-on:
+c-bool
 getline
 rpmatch
-stdbool
 
 configure.ac:
 gl_YESNO
diff --git a/tests/nap.h b/tests/nap.h
index 22c5933f97..1320d2f8f8 100644
--- a/tests/nap.h
+++ b/tests/nap.h
@@ -20,7 +20,6 @@
 # define GLTEST_NAP_H
 
 # include <limits.h>
-# include <stdbool.h>
 
 # include <intprops.h>
 
diff --git a/tests/qemu.h b/tests/qemu.h
index e1e6a6101b..0974573d89 100644
--- a/tests/qemu.h
+++ b/tests/qemu.h
@@ -16,7 +16,6 @@
 
 /* Written by Bruno Haible <bruno@xxxxxxxxx>, 2021.  */
 
-#include <stdbool.h>
 #ifdef __linux__
 # include <fcntl.h>
 # include <string.h>
diff --git a/tests/test-areadlink-with-size.c b/tests/test-areadlink-with-size.c
index eb22880b15..a820874f9e 100644
--- a/tests/test-areadlink-with-size.c
+++ b/tests/test-areadlink-with-size.c
@@ -22,7 +22,6 @@
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-areadlink.c b/tests/test-areadlink.c
index 0a417ac907..59b3cdf594 100644
--- a/tests/test-areadlink.c
+++ b/tests/test-areadlink.c
@@ -22,7 +22,6 @@
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-areadlinkat-with-size.c b/tests/test-areadlinkat-with-size.c
index a722a6985d..cf71d66782 100644
--- a/tests/test-areadlinkat-with-size.c
+++ b/tests/test-areadlinkat-with-size.c
@@ -22,7 +22,6 @@
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-areadlinkat.c b/tests/test-areadlinkat.c
index d947f4e5ee..b4959f0758 100644
--- a/tests/test-areadlinkat.c
+++ b/tests/test-areadlinkat.c
@@ -22,7 +22,6 @@
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-base32.c b/tests/test-base32.c
index 1f667f365d..6596620cca 100644
--- a/tests/test-base32.c
+++ b/tests/test-base32.c
@@ -21,7 +21,6 @@
 #include "base32.h"
 
 #include <stddef.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <stdint.h>
diff --git a/tests/test-base64.c b/tests/test-base64.c
index 6ff69a2a7a..31042450b3 100644
--- a/tests/test-base64.c
+++ b/tests/test-base64.c
@@ -20,7 +20,6 @@
 #include "base64.h"
 
 #include <stddef.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <stdint.h>
diff --git a/tests/test-ceil2.c b/tests/test-ceil2.c
index 9b87f39877..1bc08aabf8 100644
--- a/tests/test-ceil2.c
+++ b/tests/test-ceil2.c
@@ -24,7 +24,6 @@
 #include <math.h>
 
 #include <float.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdio.h>
 
diff --git a/tests/test-ceilf2.c b/tests/test-ceilf2.c
index 133c567d90..cc579a7ffe 100644
--- a/tests/test-ceilf2.c
+++ b/tests/test-ceilf2.c
@@ -24,7 +24,6 @@
 #include <math.h>
 
 #include <float.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdio.h>
 
diff --git a/tests/test-chown.c b/tests/test-chown.c
index da5de0fbd0..ec99e40cf0 100644
--- a/tests/test-chown.c
+++ b/tests/test-chown.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (chown, int, (char const *, uid_t, gid_t));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <sys/stat.h>
diff --git a/tests/test-dirname.c b/tests/test-dirname.c
index 872da1e20a..33cfe58487 100644
--- a/tests/test-dirname.c
+++ b/tests/test-dirname.c
@@ -18,7 +18,6 @@
 
 #include "dirname.h"
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-dup-safer.c b/tests/test-dup-safer.c
index 467351ee7d..329ee033a7 100644
--- a/tests/test-dup-safer.c
+++ b/tests/test-dup-safer.c
@@ -22,7 +22,6 @@
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <unistd.h>
 
diff --git a/tests/test-dup3.c b/tests/test-dup3.c
index 0b466cfc8d..87d83c77a1 100644
--- a/tests/test-dup3.c
+++ b/tests/test-dup3.c
@@ -26,7 +26,6 @@ SIGNATURE_CHECK (dup3, int, (int, int, int));
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 
 #if defined _WIN32 && ! defined __CYGWIN__
 /* Get declarations of the native Windows API functions.  */
diff --git a/tests/test-exclude.c b/tests/test-exclude.c
index 388b73bb9e..7cce5e5f36 100644
--- a/tests/test-exclude.c
+++ b/tests/test-exclude.c
@@ -20,7 +20,6 @@
 #include <stdlib.h>
 #include <errno.h>
 #include <string.h>
-#include <stdbool.h>
 #include <fnmatch.h>
 
 #include "exclude.h"
diff --git a/tests/test-execute-child.c b/tests/test-execute-child.c
index 28e7b71ba1..33ca77c62d 100644
--- a/tests/test-execute-child.c
+++ b/tests/test-execute-child.c
@@ -41,7 +41,6 @@ is_device (int fd)
 /* Now include the other header files.  */
 #include <fcntl.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/tests/test-execute-main.c b/tests/test-execute-main.c
index c99bf1adbe..0a2fe327ee 100644
--- a/tests/test-execute-main.c
+++ b/tests/test-execute-main.c
@@ -21,7 +21,6 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-execute-script.c b/tests/test-execute-script.c
index 065be83cfc..fce1a13086 100644
--- a/tests/test-execute-script.c
+++ b/tests/test-execute-script.c
@@ -18,7 +18,6 @@
 
 #include "execute.h"
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-explicit_bzero.c b/tests/test-explicit_bzero.c
index 8f06d7f0a5..113f713577 100644
--- a/tests/test-explicit_bzero.c
+++ b/tests/test-explicit_bzero.c
@@ -24,7 +24,6 @@
 #include "signature.h"
 SIGNATURE_CHECK (explicit_bzero, void, (void *, size_t));
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdint.h>
 #include <stdlib.h>
diff --git a/tests/test-fchownat.c b/tests/test-fchownat.c
index 4d05dbb6be..2c8cace801 100644
--- a/tests/test-fchownat.c
+++ b/tests/test-fchownat.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (fchownat, int, (int, char const *, uid_t, gid_t, int));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <sys/stat.h>
diff --git a/tests/test-fcntl-safer.c b/tests/test-fcntl-safer.c
index 667a68715c..ef4ab75b0a 100644
--- a/tests/test-fcntl-safer.c
+++ b/tests/test-fcntl-safer.c
@@ -21,7 +21,6 @@
 #include "fcntl--.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <unistd.h>
 
diff --git a/tests/test-fcntl.c b/tests/test-fcntl.c
index cd7d188204..77ca347972 100644
--- a/tests/test-fcntl.c
+++ b/tests/test-fcntl.c
@@ -27,7 +27,6 @@ SIGNATURE_CHECK (fcntl, int, (int, int, ...));
 /* Helpers.  */
 #include <errno.h>
 #include <stdarg.h>
-#include <stdbool.h>
 #include <unistd.h>
 
 #if defined _WIN32 && ! defined __CYGWIN__
diff --git a/tests/test-fdutimensat.c b/tests/test-fdutimensat.c
index bed6d85c77..2a2cd2ad90 100644
--- a/tests/test-fdutimensat.c
+++ b/tests/test-fdutimensat.c
@@ -21,7 +21,6 @@
 #include "utimens.h"
 
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 
diff --git a/tests/test-filenamecat.c b/tests/test-filenamecat.c
index d05f5cd48c..c5e4275cf9 100644
--- a/tests/test-filenamecat.c
+++ b/tests/test-filenamecat.c
@@ -23,7 +23,6 @@
 
 #include "idx.h"
 
-#include <stdbool.h>
 #include <stddef.h>
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/tests/test-floor2.c b/tests/test-floor2.c
index f68aed5431..fc6832e1d0 100644
--- a/tests/test-floor2.c
+++ b/tests/test-floor2.c
@@ -24,7 +24,6 @@
 #include <math.h>
 
 #include <float.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdio.h>
 
diff --git a/tests/test-floorf2.c b/tests/test-floorf2.c
index b617d0f17c..9aaabf5b12 100644
--- a/tests/test-floorf2.c
+++ b/tests/test-floorf2.c
@@ -24,7 +24,6 @@
 #include <math.h>
 
 #include <float.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdio.h>
 
diff --git a/tests/test-fstatat.c b/tests/test-fstatat.c
index 01aabf7c65..a534fc103c 100644
--- a/tests/test-fstatat.c
+++ b/tests/test-fstatat.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (fstatat, int, (int, char const *, struct stat *, int));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/tests/test-fstrcmp.c b/tests/test-fstrcmp.c
index 48522cd22e..a46b106f01 100644
--- a/tests/test-fstrcmp.c
+++ b/tests/test-fstrcmp.c
@@ -20,7 +20,6 @@
 
 #include "fstrcmp.h"
 
-#include <stdbool.h>
 
 #include "macros.h"
 
diff --git a/tests/test-futimens.c b/tests/test-futimens.c
index 4680d6639d..ac009eba42 100644
--- a/tests/test-futimens.c
+++ b/tests/test-futimens.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (futimens, int, (int, struct timespec const[2]));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-getlogin.h b/tests/test-getlogin.h
index fcc7741f12..94cbc61823 100644
--- a/tests/test-getlogin.h
+++ b/tests/test-getlogin.h
@@ -18,7 +18,6 @@
 
 #include <errno.h>
 #include <stdio.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-getopt.h b/tests/test-getopt.h
index 8538f63170..a7ac4a5541 100644
--- a/tests/test-getopt.h
+++ b/tests/test-getopt.h
@@ -16,7 +16,6 @@
 
 /* Written by Bruno Haible <bruno@xxxxxxxxx>, 2009.  */
 
-#include <stdbool.h>
 
 /* The glibc/gnulib implementation of getopt supports setting optind =
    0, but not all other implementations do.  This matters for getopt.
diff --git a/tests/test-hard-locale.c b/tests/test-hard-locale.c
index 004e14aaf4..8570bc61ba 100644
--- a/tests/test-hard-locale.c
+++ b/tests/test-hard-locale.c
@@ -21,7 +21,6 @@
 #include "hard-locale.h"
 
 #include <locale.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <string.h>
 
diff --git a/tests/test-hash.c b/tests/test-hash.c
index 5e36f83053..f8b404392e 100644
--- a/tests/test-hash.c
+++ b/tests/test-hash.c
@@ -23,7 +23,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <stdbool.h>
 #include <string.h>
 #include <unistd.h>
 
diff --git a/tests/test-idpriv-drop.c b/tests/test-idpriv-drop.c
index 6176be0caa..d66ef939d4 100644
--- a/tests/test-idpriv-drop.c
+++ b/tests/test-idpriv-drop.c
@@ -18,7 +18,6 @@
 
 #include "idpriv.h"
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-idpriv-droptemp.c b/tests/test-idpriv-droptemp.c
index d121075959..101747bc35 100644
--- a/tests/test-idpriv-droptemp.c
+++ b/tests/test-idpriv-droptemp.c
@@ -18,7 +18,6 @@
 
 #include "idpriv.h"
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-immutable.c b/tests/test-immutable.c
index b8243ae540..01afcc5bea 100644
--- a/tests/test-immutable.c
+++ b/tests/test-immutable.c
@@ -21,7 +21,6 @@
 #include "immutable.h"
 
 #include <signal.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 
diff --git a/tests/test-intprops.c b/tests/test-intprops.c
index a46e9c5e4a..84265ea3f2 100644
--- a/tests/test-intprops.c
+++ b/tests/test-intprops.c
@@ -37,7 +37,6 @@
 #endif
 #include "verify.h"
 
-#include <stdbool.h>
 #include <inttypes.h>
 #include <limits.h>
 
diff --git a/tests/test-lchown.c b/tests/test-lchown.c
index e8c8fa4b66..13eee846ac 100644
--- a/tests/test-lchown.c
+++ b/tests/test-lchown.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (lchown, int, (char const *, uid_t, gid_t));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <sys/stat.h>
diff --git a/tests/test-link.c b/tests/test-link.c
index 8500c036cc..fa654dc274 100644
--- a/tests/test-link.c
+++ b/tests/test-link.c
@@ -23,7 +23,6 @@ SIGNATURE_CHECK (link, int, (char const *, char const *));
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-linkat.c b/tests/test-linkat.c
index 1b4eee430c..3ef2312107 100644
--- a/tests/test-linkat.c
+++ b/tests/test-linkat.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (linkat, int, (int, char const *, int, char const *, int));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-lstat.c b/tests/test-lstat.c
index 46c2683b48..c35d41cbb1 100644
--- a/tests/test-lstat.c
+++ b/tests/test-lstat.c
@@ -29,7 +29,6 @@ SIGNATURE_CHECK (lstat, int, (char const *, struct stat *));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/tests/test-mbmemcasecmp.c b/tests/test-mbmemcasecmp.c
index d275750d73..633453d8db 100644
--- a/tests/test-mbmemcasecmp.c
+++ b/tests/test-mbmemcasecmp.c
@@ -21,7 +21,6 @@
 #include "mbmemcasecmp.h"
 
 #include <locale.h>
-#include <stdbool.h>
 #include <string.h>
 
 #include "macros.h"
diff --git a/tests/test-mbmemcasecoll.c b/tests/test-mbmemcasecoll.c
index 1ecd19446c..c17ddbb153 100644
--- a/tests/test-mbmemcasecoll.c
+++ b/tests/test-mbmemcasecoll.c
@@ -21,7 +21,6 @@
 #include "mbmemcasecoll.h"
 
 #include <locale.h>
-#include <stdbool.h>
 #include <string.h>
 
 #include "macros.h"
diff --git a/tests/test-mkdir.c b/tests/test-mkdir.c
index 26450520bc..0d0520dafe 100644
--- a/tests/test-mkdir.c
+++ b/tests/test-mkdir.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (mkdir, int, (char const *, mode_t));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/tests/test-mkdirat.c b/tests/test-mkdirat.c
index 6a538bffd4..446f81967c 100644
--- a/tests/test-mkdirat.c
+++ b/tests/test-mkdirat.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (mkdirat, int, (int, char const *, mode_t));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/tests/test-mkfifo.c b/tests/test-mkfifo.c
index 6be6d10691..c31809961d 100644
--- a/tests/test-mkfifo.c
+++ b/tests/test-mkfifo.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (mkfifo, int, (char const *, mode_t));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/tests/test-mkfifoat.c b/tests/test-mkfifoat.c
index 2fcb03045e..38a933c8e3 100644
--- a/tests/test-mkfifoat.c
+++ b/tests/test-mkfifoat.c
@@ -26,7 +26,6 @@ SIGNATURE_CHECK (mknodat, int, (int, char const *, mode_t, dev_t));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-mknod.c b/tests/test-mknod.c
index b8fac29bc7..314bc61fe7 100644
--- a/tests/test-mknod.c
+++ b/tests/test-mknod.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (mknod, int, (char const *, mode_t, dev_t));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/tests/test-nonblocking-pipe-child.c b/tests/test-nonblocking-pipe-child.c
index 53704c72ef..cced8dc0e4 100644
--- a/tests/test-nonblocking-pipe-child.c
+++ b/tests/test-nonblocking-pipe-child.c
@@ -18,7 +18,6 @@
 #include <config.h>
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-nonblocking-pipe-main.c b/tests/test-nonblocking-pipe-main.c
index 09cf80425d..e8e92980b1 100644
--- a/tests/test-nonblocking-pipe-main.c
+++ b/tests/test-nonblocking-pipe-main.c
@@ -18,7 +18,6 @@
 #include <config.h>
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-nonblocking-socket-child.c b/tests/test-nonblocking-socket-child.c
index f7d52715a8..640fc5d3c8 100644
--- a/tests/test-nonblocking-socket-child.c
+++ b/tests/test-nonblocking-socket-child.c
@@ -18,7 +18,6 @@
 #include <config.h>
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-nonblocking-socket-main.c b/tests/test-nonblocking-socket-main.c
index e40dda3e58..4008c733db 100644
--- a/tests/test-nonblocking-socket-main.c
+++ b/tests/test-nonblocking-socket-main.c
@@ -18,7 +18,6 @@
 #include <config.h>
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-open.c b/tests/test-open.c
index 3812bac0ba..d7c5a0869d 100644
--- a/tests/test-open.c
+++ b/tests/test-open.c
@@ -24,7 +24,6 @@
 SIGNATURE_CHECK (open, int, (char const *, int, ...));
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <unistd.h>
 
diff --git a/tests/test-openat.c b/tests/test-openat.c
index 3571fcc397..5502bdd98a 100644
--- a/tests/test-openat.c
+++ b/tests/test-openat.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (openat, int, (int, char const *, int, ...));
 
 #include <errno.h>
 #include <stdarg.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <unistd.h>
 
diff --git a/tests/test-pipe.c b/tests/test-pipe.c
index e0d5bd50fe..0525f7d49e 100644
--- a/tests/test-pipe.c
+++ b/tests/test-pipe.c
@@ -22,7 +22,6 @@
 SIGNATURE_CHECK (pipe, int, (int[2]));
 
 #include <fcntl.h>
-#include <stdbool.h>
 
 #if defined _WIN32 && ! defined __CYGWIN__
 /* Get declarations of the native Windows API functions.  */
diff --git a/tests/test-pipe2.c b/tests/test-pipe2.c
index 7ed9208dec..b5c641a9da 100644
--- a/tests/test-pipe2.c
+++ b/tests/test-pipe2.c
@@ -22,7 +22,6 @@
 SIGNATURE_CHECK (pipe2, int, (int[2], int));
 
 #include <fcntl.h>
-#include <stdbool.h>
 
 #if defined _WIN32 && ! defined __CYGWIN__
 /* Get declarations of the native Windows API functions.  */
diff --git a/tests/test-poll.c b/tests/test-poll.c
index bc3ab104b4..6edaeb33a0 100644
--- a/tests/test-poll.c
+++ b/tests/test-poll.c
@@ -31,7 +31,6 @@ SIGNATURE_CHECK (poll, int, (struct pollfd[], nfds_t, int));
 #include <arpa/inet.h>
 #include <fcntl.h>
 #include <stdlib.h>
-#include <stdbool.h>
 #include <sys/ioctl.h>
 #include <errno.h>
 
diff --git a/tests/test-posix_spawn-chdir.c b/tests/test-posix_spawn-chdir.c
index 2e76c30197..044acaf220 100644
--- a/tests/test-posix_spawn-chdir.c
+++ b/tests/test-posix_spawn-chdir.c
@@ -23,7 +23,6 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-posix_spawn-dup2-stdin.c b/tests/test-posix_spawn-dup2-stdin.c
index 9d3f069132..506fdf37b9 100644
--- a/tests/test-posix_spawn-dup2-stdin.c
+++ b/tests/test-posix_spawn-dup2-stdin.c
@@ -23,7 +23,6 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-posix_spawn-dup2-stdout.c b/tests/test-posix_spawn-dup2-stdout.c
index 25d96ee138..52a36fc81a 100644
--- a/tests/test-posix_spawn-dup2-stdout.c
+++ b/tests/test-posix_spawn-dup2-stdout.c
@@ -45,7 +45,6 @@ SIGNATURE_CHECK (posix_spawn_file_actions_adddup2, int,
 #include <errno.h>
 #include <fcntl.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-posix_spawn-fchdir.c b/tests/test-posix_spawn-fchdir.c
index 2236e68c89..54442f0d02 100644
--- a/tests/test-posix_spawn-fchdir.c
+++ b/tests/test-posix_spawn-fchdir.c
@@ -23,7 +23,6 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-posix_spawn-open1.c b/tests/test-posix_spawn-open1.c
index bce851d0c6..df4eb8917f 100644
--- a/tests/test-posix_spawn-open1.c
+++ b/tests/test-posix_spawn-open1.c
@@ -31,7 +31,6 @@ SIGNATURE_CHECK (posix_spawn, int, (pid_t *, char const *,
 #include <errno.h>
 #include <fcntl.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-posix_spawn-open2.c b/tests/test-posix_spawn-open2.c
index 809b85b5f1..127d7a0b37 100644
--- a/tests/test-posix_spawn-open2.c
+++ b/tests/test-posix_spawn-open2.c
@@ -25,7 +25,6 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <signal.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-quotearg-simple.c b/tests/test-quotearg-simple.c
index b07b715929..8999d04b41 100644
--- a/tests/test-quotearg-simple.c
+++ b/tests/test-quotearg-simple.c
@@ -21,7 +21,6 @@
 #include "quotearg.h"
 
 #include <ctype.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-quotearg.c b/tests/test-quotearg.c
index 12bab8cdba..a6c2c7a740 100644
--- a/tests/test-quotearg.c
+++ b/tests/test-quotearg.c
@@ -21,7 +21,6 @@
 #include "quotearg.h"
 
 #include <locale.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-readlink.c b/tests/test-readlink.c
index 3516129845..a722e048aa 100644
--- a/tests/test-readlink.c
+++ b/tests/test-readlink.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (readlink, ssize_t, (char const *, char *, size_t));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-readlinkat.c b/tests/test-readlinkat.c
index 64e8f22469..c084f3ea32 100644
--- a/tests/test-readlinkat.c
+++ b/tests/test-readlinkat.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (readlinkat, ssize_t, (int, char const *, char *, size_t));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-readtokens.c b/tests/test-readtokens.c
index ad745743c4..472dbe6ca0 100644
--- a/tests/test-readtokens.c
+++ b/tests/test-readtokens.c
@@ -15,7 +15,6 @@
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
 #include <config.h>
-#include <stdbool.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
diff --git a/tests/test-rename.c b/tests/test-rename.c
index 0e743f5510..a87c3fb3eb 100644
--- a/tests/test-rename.c
+++ b/tests/test-rename.c
@@ -24,7 +24,6 @@ SIGNATURE_CHECK (rename, int, (char const *, char const *));
 #include <dirent.h>
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <sys/stat.h>
diff --git a/tests/test-renameat.c b/tests/test-renameat.c
index 8e56fc05df..8a5ce7c629 100644
--- a/tests/test-renameat.c
+++ b/tests/test-renameat.c
@@ -26,7 +26,6 @@ SIGNATURE_CHECK (renameat, int, (int, char const *, int, char const *));
 #include <dirent.h>
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-renameatu.c b/tests/test-renameatu.c
index 3f67ec048f..1d8986ee40 100644
--- a/tests/test-renameatu.c
+++ b/tests/test-renameatu.c
@@ -29,7 +29,6 @@ SIGNATURE_CHECK (renameatu, int,
 #include <dirent.h>
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-rmdir.c b/tests/test-rmdir.c
index 81437c3ab0..deea6bdf81 100644
--- a/tests/test-rmdir.c
+++ b/tests/test-rmdir.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (rmdir, int, (char const *));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <sys/stat.h>
diff --git a/tests/test-round2.c b/tests/test-round2.c
index b26e24c742..4cc37c59bf 100644
--- a/tests/test-round2.c
+++ b/tests/test-round2.c
@@ -30,7 +30,6 @@
 
 #include <math.h>
 #include <float.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/tests/test-select.h b/tests/test-select.h
index 5c6784169d..86a79ad83a 100644
--- a/tests/test-select.h
+++ b/tests/test-select.h
@@ -24,7 +24,6 @@
 #include <unistd.h>
 #include <fcntl.h>
 #include <stdlib.h>
-#include <stdbool.h>
 #include <sys/ioctl.h>
 #include <errno.h>
 
diff --git a/tests/test-spawn-pipe-child.c b/tests/test-spawn-pipe-child.c
index 326c7b4585..9dac7f7560 100644
--- a/tests/test-spawn-pipe-child.c
+++ b/tests/test-spawn-pipe-child.c
@@ -18,7 +18,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/tests/test-spawn-pipe-main.c b/tests/test-spawn-pipe-main.c
index 40aac6dcf7..91dc0722d2 100644
--- a/tests/test-spawn-pipe-main.c
+++ b/tests/test-spawn-pipe-main.c
@@ -19,7 +19,6 @@
 #include "spawn-pipe.h"
 #include "wait-process.h"
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-spawn-pipe-script.c b/tests/test-spawn-pipe-script.c
index 51f9dbd073..5d574bf5cc 100644
--- a/tests/test-spawn-pipe-script.c
+++ b/tests/test-spawn-pipe-script.c
@@ -20,7 +20,6 @@
 #include "wait-process.h"
 
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-stack.c b/tests/test-stack.c
index 6ad2618dcc..3f4ac4b184 100644
--- a/tests/test-stack.c
+++ b/tests/test-stack.c
@@ -18,7 +18,6 @@
 
 #include <config.h>
 
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include "assure.h"
diff --git a/tests/test-stat.c b/tests/test-stat.c
index cf0d968700..c8a4b98454 100644
--- a/tests/test-stat.c
+++ b/tests/test-stat.c
@@ -29,7 +29,6 @@ SIGNATURE_CHECK (stat, int, (char const *, struct stat *));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <stdio.h>
 #include <unistd.h>
diff --git a/tests/test-supersede.c b/tests/test-supersede.c
index 887601ceef..0453d98bc9 100644
--- a/tests/test-supersede.c
+++ b/tests/test-supersede.c
@@ -24,7 +24,6 @@
 
 #include <errno.h>
 #include <fcntl.h>
-#include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
 #include <sys/stat.h>
diff --git a/tests/test-symlink.c b/tests/test-symlink.c
index 5752f8f8b4..3dbd60a098 100644
--- a/tests/test-symlink.c
+++ b/tests/test-symlink.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (symlink, int, (char const *, char const *));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <sys/stat.h>
diff --git a/tests/test-symlinkat.c b/tests/test-symlinkat.c
index 68efffd93c..80f02528bf 100644
--- a/tests/test-symlinkat.c
+++ b/tests/test-symlinkat.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (symlinkat, int, (char const *, int, char const *));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-system-quote-main.c b/tests/test-system-quote-main.c
index 9436a06885..657719f597 100644
--- a/tests/test-system-quote-main.c
+++ b/tests/test-system-quote-main.c
@@ -26,7 +26,6 @@
 #endif
 
 #include <limits.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-term-style-control-hello.c b/tests/test-term-style-control-hello.c
index c405ba57ba..b932ad5967 100644
--- a/tests/test-term-style-control-hello.c
+++ b/tests/test-term-style-control-hello.c
@@ -20,7 +20,6 @@
 /* Specification.  */
 #include "term-style-control.h"
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-term-style-control-yes.c b/tests/test-term-style-control-yes.c
index a3599a6c51..0c1466ea53 100644
--- a/tests/test-term-style-control-yes.c
+++ b/tests/test-term-style-control-yes.c
@@ -20,7 +20,6 @@
 /* Specification.  */
 #include "term-style-control.h"
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <string.h>
 #include <unistd.h>
diff --git a/tests/test-timespec.c b/tests/test-timespec.c
index 11b769c917..9959e95a6c 100644
--- a/tests/test-timespec.c
+++ b/tests/test-timespec.c
@@ -23,7 +23,6 @@
 #include "intprops.h"
 #include "macros.h"
 
-#include <stdbool.h>
 #include <limits.h>
 
 static struct { int s; int ns; } const prototype[] =
diff --git a/tests/test-trunc2.c b/tests/test-trunc2.c
index b833dd1e37..976ab250bb 100644
--- a/tests/test-trunc2.c
+++ b/tests/test-trunc2.c
@@ -24,7 +24,6 @@
 #include <math.h>
 
 #include <float.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdio.h>
 
diff --git a/tests/test-truncf2.c b/tests/test-truncf2.c
index 14c43cfc0e..b25e16af3b 100644
--- a/tests/test-truncf2.c
+++ b/tests/test-truncf2.c
@@ -24,7 +24,6 @@
 #include <math.h>
 
 #include <float.h>
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdio.h>
 
diff --git a/tests/test-unlink.c b/tests/test-unlink.c
index d456078d15..d1ed36a1df 100644
--- a/tests/test-unlink.c
+++ b/tests/test-unlink.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (unlink, int, (char const *));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/test-unlinkat.c b/tests/test-unlinkat.c
index 2c329fd5a6..b565fd67ef 100644
--- a/tests/test-unlinkat.c
+++ b/tests/test-unlinkat.c
@@ -25,7 +25,6 @@ SIGNATURE_CHECK (unlinkat, int, (int, char const *, int));
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <sys/stat.h>
diff --git a/tests/test-userspec.c b/tests/test-userspec.c
index 65287a592d..08f1a9ca9d 100644
--- a/tests/test-userspec.c
+++ b/tests/test-userspec.c
@@ -24,7 +24,6 @@
 #include <assert.h>
 #include <string.h>
 #include <stdlib.h>
-#include <stdbool.h>
 #include <sys/types.h>
 #include <pwd.h>
 #include <grp.h>
diff --git a/tests/test-utime.c b/tests/test-utime.c
index c51cd1ff8d..b172b0d51b 100644
--- a/tests/test-utime.c
+++ b/tests/test-utime.c
@@ -18,7 +18,6 @@
 
 #include <utime.h>
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 
diff --git a/tests/test-utimens.c b/tests/test-utimens.c
index 136c4daf9e..a2188f90b5 100644
--- a/tests/test-utimens.c
+++ b/tests/test-utimens.c
@@ -20,7 +20,6 @@
 
 #include "utimens.h"
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 
diff --git a/tests/test-utimensat.c b/tests/test-utimensat.c
index 267f1e5f42..5831fde1be 100644
--- a/tests/test-utimensat.c
+++ b/tests/test-utimensat.c
@@ -26,7 +26,6 @@ SIGNATURE_CHECK (utimensat, int, (int, char const *, struct timespec const[2],
 
 #include <fcntl.h>
 #include <errno.h>
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/tests/unictype/test-categ_byname.c b/tests/unictype/test-categ_byname.c
index 7a2fcfb955..2489caaa28 100644
--- a/tests/unictype/test-categ_byname.c
+++ b/tests/unictype/test-categ_byname.c
@@ -18,7 +18,6 @@
 
 #include "unictype.h"
 
-#include <stdbool.h>
 #include <string.h>
 
 #include "macros.h"
diff --git a/tests/unigbrk/test-uc-is-grapheme-break.c b/tests/unigbrk/test-uc-is-grapheme-break.c
index d39dff3488..433ba686c7 100644
--- a/tests/unigbrk/test-uc-is-grapheme-break.c
+++ b/tests/unigbrk/test-uc-is-grapheme-break.c
@@ -21,7 +21,6 @@
 /* Specification. */
 #include <unigbrk.h>
 
-#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-- 
2.37.2


[Index of Archives]     [GCC Help]     [Kernel Discussion]     [RPM Discussion]     [Red Hat Development]     [Yosemite News]     [Linux USB]     [Samba]

  Powered by Linux