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 callstd::rotate
with an empty range.
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 becausemake
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.
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.
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, whenstrace
was attached to processes using the-p
option. In Red Hat Developer Toolset 9.1, the problem is fixed.Previously,
strace
failed some internal tests in an environment with thekernel-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.
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 ofelfutils
with the GCC compiler version distributed with DTS. In Red Hat Developer Toolset 9.1, you can buildltrace
with the provided GCC version.This update also fixes some internal errors by using the string "unknown" instead of "(null)" in backtraces.