Landing: e79f0f818c0e
Project / Subsystem
gcc / libstdc++
Date
2026-04-28
Author
Jonathan Wakely
Commit
e79f0f818c0e42d0d84c90a54684dfb269ac388c
Source
github
Perf win
Yes
Breaking
No
All attributes
- project
- gcc
- subsystem
- libstdc++
- patch_id
- —
- commit_hash
- e79f0f818c0e42d0d84c90a54684dfb269ac388c
- source_type
- github
- headline
- Improve libstdc++ handling of leap second expiry time
- tldr
- libstdc++ can now use its built-in leap second list even after the expiry date by consulting the OS tzdata, avoiding filesystem reads where possible.
- author
- Jonathan Wakely
- outcome
- committed
- performance_win
- true
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • libstdc++
- • chrono
- • leap seconds
- • time zones
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-04-28T00:00:00.000Z
The <chrono> header in libstdc++ has a hardcoded list of leap seconds, which can become outdated. This change allows the library to continue using this list even after its expiry date, by checking the system’s tzdata leapseconds file. The code prioritizes using in-memory lists to avoid slower filesystem reads, and caches the results.