Landing: 433a6574f681

Project / Subsystem

gcc / gccrs

Date

2026-06-28

Author

Owen Avery

Commit

433a6574f6813beebbb561654dddd7561751827e

Source

github

Perf win

Yes

Breaking

No

All attributes

project
gcc
subsystem
gccrs
patch_id
—
commit_hash
433a6574f6813beebbb561654dddd7561751827e
source_type
github
headline
gccrs: Create ForeverStackBase to unify node trees
tldr
Introduces ForeverStackBase to decouple node structure from specific ForeverStack instances, enabling shared node memory.
author
Owen Avery
outcome
committed
performance_win
true
breaking_change
false
series_id
—
series_parts
[]
tags
  • • gccrs
  • • refactoring
  • • memory management
  • • design
discussion_id_link
—
bugzilla_pr
—
date
2026-06-28T00:00:00.000Z

This commit refactors gccrs by introducing ForeverStackBase as a base class for ForeverStack. The Node structure and related members, such as Link, LinkCmp, is_root, is_prelude, is_leaf, and insert_child, are moved to ForeverStackBase. This allows ForeverStack instances to share the same underlying node objects, reducing memory overhead and simplifying the management of nodes across different namespaces. This change is a precursor to unifying node trees across multiple ForeverStack instances.