Landing: b12fdd952511

Project / Subsystem

gcc / gcc/libstdc++

Date

2026-06-22

Author

Jonathan Wakely

Commit

b12fdd952511786bf8d285e7080e94deeb32aa1d

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
gcc/libstdc++
patch_id
commit_hash
b12fdd952511786bf8d285e7080e94deeb32aa1d
source_type
github
headline
Remove std::atomic dependency in tzdb.cc for non-atomic targets
tldr
Libstdc++ tzdb.cc avoids atomic<unsigned> for targets lacking atomic word operations.
author
Jonathan Wakely
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • libstdc++
  • portability
  • atomic
discussion_id_link
bugzilla_pr
date
2026-06-22T00:00:00.000Z

To support targets without atomic word operations, such as Cortex-M0, libstdc++‘s timezone database implementation (tzdb.cc) now avoids a hard dependency on std::atomic<unsigned>. This change replaces the atomic variable with a struct that uses a mutex-protected access or std::atomic_ref, depending on the context, ensuring compatibility across a wider range of hardware.