Landing: 85fb82cc8c96

Project / Subsystem

binutils / binutils/gas

Date

2026-07-23

Author

Alan Modra <amodra@sourceware.org>

Commit

85fb82cc8c960e97c5a51f51b87b19a3e6263c50

Source

public_inbox

Perf win

No

Breaking

No

All attributes

project
binutils
subsystem
binutils/gas
patch_id
commit_hash
85fb82cc8c960e97c5a51f51b87b19a3e6263c50
source_type
public_inbox
headline
PR 30308 more unbounded recursion in i386 gas simplify
tldr
Fixed a stack overflow issue in i386 gas's expression simplification that occurred with specific combinations of symbol types.
author
Alan Modra <amodra@sourceware.org>
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • binutils
  • gas
  • i386
  • bugfix
  • recursion
discussion_id_link
public_inbox:binutils#30308
bugzilla_pr
date
2026-07-23T00:00:00.000Z

Addressed a bug in the gas assembler for i386 where certain complex expressions could lead to unbounded recursion, causing a stack overflow. The issue occurred when an expression involved both X_add_symbol and X_op_symbol. The fix ensures that the assembler correctly handles these cases by marking symbols as resolving during the recursive calls and clearing the mark afterwards, preventing infinite loops.