Landing: 54e80f9747d6

Project / Subsystem

binutils / libiberty

Date

2026-07-01

Author

Alan Modra <amodra@sourceware.org>

Commit

54e80f9747d62efea50038655801ecb58d37b507

Source

public_inbox

Perf win

No

Breaking

No

All attributes

project
binutils
subsystem
libiberty
patch_id
commit_hash
54e80f9747d62efea50038655801ecb58d37b507
source_type
public_inbox
headline
libiberty: Fix signed integer overflow in d_compact_number
tldr
Prevents potential signed integer overflow in libiberty's demangling function by using unsigned arithmetic.
author
Alan Modra <amodra@sourceware.org>
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • libiberty
  • demangling
  • integer-overflow
discussion_id_link
bugzilla_pr
date
2026-07-01T00:00:00.000Z

The d_compact_number function in libiberty’s C++ demangler could suffer from a signed integer overflow when calculating a number. This commit resolves the issue by performing the addition using unsigned arithmetic, preventing undefined behavior and ensuring correct demangling for certain inputs.