Appendix B. Changes in Version 9.1

The sections below document features and bug fixes introduced in Red Hat Developer Toolset 9.1.

B.1. Changes in GCC

Red Hat Developer Toolset 9.1 is distributed with GCC 9.3.1, which provides numerous bug fixes and enhancements.

One of the most notable bug fixes is:

  • Previously, using C++ object files compiled with GCC versions earlier than 9.1.0 could cause ABI incompatibilities. When the C++ std::rotate algorithm was called with an empty range, the compiled program could terminate unexpectedly with a divide-by-zero error (as a SIGFPE signal). This problem is fixed for GCC 9.2.0 and future releases. To work around this problem, recompile all objects that might call std::rotate with an empty range.

    Bug#90920

B.2. Changes in make

Red Hat Developer Toolset 9.1 is distributed with make 4.2.1.

The following bug has been fixed since the previous release of Red Hat Developer Toolset:

  • Previously, make slowed down when using parallel builds because make sub-processes could become temporarily unresponsive while waiting for their turn to run. As a consequence, builds with high -j values could slow down or run at lower effective -j values. In Red Hat Developer Toolset 9.1, make’s job control logic has become non-blocking and, as a result, builds with high -j values should run at full -j speed.

    BZ#1785447

B.3. Changes in binutils

Red Hat Developer Toolset 9.1 is distributed with binutils 2.32.

The following bug has been fixed since the previous release of Red Hat Developer Toolset:

  • Previously, when a user instructed the linker to perform garbage collection, the linker could, under certain circumstances, erroneously remove weak symbol references from a program. As a consequence, the program considered such a symbol undefined, even if it was provided by a shared library. In Red Hat Developer Toolset 9.1, the problem is fixed. The weak reference remains in the program and is correctly resolved at run time.

    BZ#1804325

B.4. Changes in strace

Red Hat Developer Toolset 9.1 is distributed with strace 5.1.

The following bugs have been fixed since the previous release of Red Hat Developer Toolset:

  • Previously, strace did not print stack trace for the first several system calls, up to the first system call that affects memory maps of the traced process, when strace was attached to processes using the -p option. In Red Hat Developer Toolset 9.1, the problem is fixed.

    BZ#1790057

  • Previously, strace failed some internal tests in an environment with the kernel-alt package installed. In Red Hat Developer Toolset 9.1, the problem is fixed by enabling:

    • decoding of the Linux kernel Crypto API netlink protocol;
    • RTM_DELMDB, RTM_GETMDB, and RTM_NEWMDB netlink messages;
    • FRA_UID_RANGE, NDTA_CONFIG, NDTA_STATS, RTA_MFC_STATS, and RTA_VIA netlink attributes.

      BZ#1758201

B.5. Changes in ltrace

Red Hat Developer Toolset 9.1 is distributed with ltrace 0.7.91.

The following bug has been fixed since the previous release of Red Hat Developer Toolset:

  • Previously, ltrace failed to build if you used any version of elfutils with the GCC compiler version distributed with DTS. In Red Hat Developer Toolset 9.1, you can build ltrace with the provided GCC version.

    This update also fixes some internal errors by using the string "unknown" instead of "(null)" in backtraces.

    BZ#1759532