https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124853

--- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Tomasz Kaminski <[email protected]>:

https://gcc.gnu.org/g:610134a51fa3d0bcd3e0980c6574557172dc88c0

commit r17-2462-g610134a51fa3d0bcd3e0980c6574557172dc88c0
Author: Tomasz KamiÅski <[email protected]>
Date:   Thu Jul 16 12:50:32 2026 +0200

    libstdc++: Apply rule triggering at Zone line transition [PR124853]

    When seeding zone information from the application of the rules
    prior the transition, we should consider the rule triggering exactly
    at boundary, not only prior, i.e. call find_active_rule with info.begin.
    Due the rule_start - t < days(1) check (that is not removed yet), such
    transitions were effectively ignored.

    This addresses regressions introduced by r17-2060-gf7cde200320e08,
    where new differences between outputs of libstdc++ and date library were
    introduced for some zones (e.g. Europe/Lisbon in 1976). With this fixup,
    the patch is now pure improvement in consistency.

    libstdc++-v3/ChangeLog:

            PR libstdc++/124853
            * src/c++20/tzdb.cc (time_zone::_M_get_sys_info): Find
            rules firing exactly at transition time.
            * testsuite/std/time/time_zone/wall_cascade.cc: Add test
            for Europe/Lisbon, and corrected test_negative.

    Reviewed-by: Jonathan Wakely <[email protected]>
    Signed-off-by: Tomasz KamiÅski <[email protected]>

Reply via email to