Index: chapter05/gcc-pass1.xml
===================================================================
--- chapter05/gcc-pass1.xml	(revision 2ca9d8fb04f0e7fe6618077c1cc9145df5879b46)
+++ chapter05/gcc-pass1.xml	(revision 3a72ffa8586b4c88824e6882e11ba140472e2e5e)
@@ -96,5 +96,4 @@
     --with-newlib             \
     --without-headers         \
-    --enable-initfini-array   \
     --disable-nls             \
     --disable-shared          \
@@ -168,13 +167,4 @@
 
       <varlistentry>
-        <term><parameter>--enable-initfini-array</parameter></term>
-        <listitem>
-          <para>This switch forces the use of some internal data structures
-          that are needed but cannot be detected when building a cross
-          compiler.</para>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry>
         <term><parameter>--disable-shared</parameter></term>
         <listitem>
Index: chapter06/gcc-pass2.xml
===================================================================
--- chapter06/gcc-pass2.xml	(revision 2ca9d8fb04f0e7fe6618077c1cc9145df5879b46)
+++ chapter06/gcc-pass2.xml	(revision 3a72ffa8586b4c88824e6882e11ba140472e2e5e)
@@ -71,10 +71,4 @@
     -e '/m32=/s/m32=.*/m32=..\/lib32$(call if_multiarch,:i386-linux-gnu)/' \
     -i.orig gcc/config/i386/t-linux64</userinput></screen>
-
-    <!-- https://gcc.gnu.org/PR100017 -->
-    <para>Fix an issue causing failure cross-compiling libstdc++:</para>
-
-<screen><userinput remap="pre">sed 's/gnu++17/&amp; -nostdinc++/' \
-    -i libstdc++-v3/src/c++17/Makefile.in</userinput></screen>
 
     <para>Override the building rule of libgcc and libstdc++ headers, to
Index: chapter08/gcc.xml
===================================================================
--- chapter08/gcc.xml	(revision 2ca9d8fb04f0e7fe6618077c1cc9145df5879b46)
+++ chapter08/gcc.xml	(revision 3a72ffa8586b4c88824e6882e11ba140472e2e5e)
@@ -151,10 +151,7 @@
     <ulink url="https://gcc.gnu.org/ml/gcc-testresults/"/>.</para>
 
-    <!-- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101081 -->
-    <para>Eight tests related to analyzer are known to fail.</para>
-
-    <para>In libstdc++, one numpunct test and six tests related to get_time are
-    known to fail.  These are all because the locale definitions in glibc have
-    changed but libstdc++ does not currently support those changes.</para>
+    <para>In g++, four tests related to PR100400 are known to be reported
+    as both XPASS and FAIL.  It's because the test file for this known issue
+    is not well written.</para>
 
     <para>A few unexpected failures cannot always be avoided. The GCC developers
@@ -172,9 +169,7 @@
     </para></note-->
 
-    <!-- PR 91085, will be fixed in GCC 12. -->
-    <para>Install the package and remove an unneeded directory:</para>
-
-<screen><userinput remap="install">make install
-rm -rf /usr/lib/gcc/$(gcc -dumpmachine)/&gcc-version;/include-fixed/bits/</userinput></screen>
+    <para>Install the package:</para>
+
+<screen><userinput remap="install">make install</userinput></screen>
 
     <para>The GCC build directory is owned by <systemitem class="username">
Index: chapter08/procps.xml
===================================================================
--- chapter08/procps.xml	(revision 2ca9d8fb04f0e7fe6618077c1cc9145df5879b46)
+++ chapter08/procps.xml	(revision 3a72ffa8586b4c88824e6882e11ba140472e2e5e)
@@ -84,6 +84,13 @@
 <screen><userinput remap="test">make check</userinput></screen>
 
-    <para>Five tests related to pkill are known to fail due to a problem
-    with tests that were not updated.</para>
+    <!-- It's because "free -v" shows "used" greater than "total", and
+         a negative "free" for "Comm" line.  The "total" value is from
+         "CommitLimit" in /proc/meminfo, which is the limit for one process.
+         But the "used" value is from "Committed_AS" in the same file,
+         which is the total commited virtual memory space of all processes.
+         I'll make a report to upstream anyway.  -->
+    <para>One test named <filename>FAIL: free with commit</filename>
+    may fail if some applications with a custom memory allocator (for
+    example, JVM and Web browsers) are running on the host distro.</para>
 
     <para>Install the package:</para>
Index: chapter08/util-linux.xml
===================================================================
--- chapter08/util-linux.xml	(revision 2ca9d8fb04f0e7fe6618077c1cc9145df5879b46)
+++ chapter08/util-linux.xml	(revision 3a72ffa8586b4c88824e6882e11ba140472e2e5e)
@@ -97,12 +97,4 @@
 <screen role="nodump"><userinput>bash tests/run.sh --srcdir=$PWD --builddir=$PWD</userinput></screen>
     </warning>
-
-    <note><para>There is one test that fails in the chroot environment and
-    causes the tests to hang forever.  The problem does not occur outside
-    of the chroot environment.
-    To work around the problem, delete the test:</para>
-
-    <screen><userinput remap="test">rm tests/ts/lsns/ioctl_ns</userinput></screen>
-    </note>
 
 <screen><userinput remap="test">chown -Rv tester .
Index: packages.ent
===================================================================
--- packages.ent	(revision 2ca9d8fb04f0e7fe6618077c1cc9145df5879b46)
+++ packages.ent	(revision 3a72ffa8586b4c88824e6882e11ba140472e2e5e)
@@ -59,8 +59,8 @@
 <!ENTITY bash-fin-sbu "1.5 SBU">
 
-<!ENTITY bc-version "5.2.4">
+<!ENTITY bc-version "5.2.5">
 <!ENTITY bc-size "428 KB">
 <!ENTITY bc-url "https://github.com/gavinhoward/bc/releases/download/&bc-version;/bc-&bc-version;.tar.xz">
-<!ENTITY bc-md5 "a2592b0cd87e383c3b594d3ccc515272">
+<!ENTITY bc-md5 "7b154ecc65aa07164c09de9fd88c7fc6">
 <!ENTITY bc-home "https://git.yzena.com/gavin/bc">
 <!ENTITY bc-fin-du "7.1 MB">
@@ -218,18 +218,18 @@
 <!ENTITY gawk-fin-sbu "0.4 SBU">
 
-<!ENTITY gcc-version "11.3.0">
-<!ENTITY gcc-size "79,240 KB">
+<!ENTITY gcc-version "12.1.0">
+<!ENTITY gcc-size "78,875 KB">
 <!ENTITY gcc-url "&gnu;gcc/gcc-&gcc-version;/gcc-&gcc-version;.tar.xz">
-<!ENTITY gcc-md5 "4ee3e8c4c99e7b3444eb79f00f5f7a7e">
-<!ENTITY gcc-sha256 "b47cf2818691f5b1e21df2bb38c795fac2cfbd640ede2d0a5e1c89e338a3ac39">
+<!ENTITY gcc-md5 "ed45b55ee859ada4b25a1e76e0c4d966">
+<!ENTITY gcc-sha256 "62fd634889f31c02b64af2c468f064b47ad1ca78411c45abe6ac4b5f8dd19c7b">
 <!ENTITY gcc-home "https://gcc.gnu.org/">
-<!ENTITY gcc-tmpp1-du "3.3 GB">
+<!ENTITY gcc-tmpp1-du "3.8 GB">
 <!ENTITY gcc-tmpp1-sbu "11 SBU">
-<!ENTITY gcc-tmpp2-du "3.3 GB">
-<!ENTITY gcc-tmpp2-sbu "11 SBU">
-<!ENTITY gcc-fin-du "4.3 GB ">
-<!ENTITY gcc-fin-sbu "153 SBU (with tests)">
+<!ENTITY gcc-tmpp2-du "4.5 GB">
+<!ENTITY gcc-tmpp2-sbu "14 SBU">
+<!ENTITY gcc-fin-du "4.6 GB ">
+<!ENTITY gcc-fin-sbu "160 SBU (with tests)">
 <!ENTITY libquadmath-version "0.0.0">
-<!ENTITY libstdcpp-version   "6.0.29">
+<!ENTITY libstdcpp-version   "6.0.30">
 <!ENTITY libitm-version      "1.0.0">
 <!ENTITY libatomic-version   "1.2.0">
