[Bug libstdc++/61758] New: std::chrono::steady_clock::now() no longer exported

Martin.vGagern at gmx dot net gcc-bugzilla@gcc.gnu.org
Wed Jul 9 09:25:00 GMT 2014


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

            Bug ID: 61758
           Summary: std::chrono::steady_clock::now() no longer exported
           Product: gcc
           Version: 4.8.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: Martin.vGagern at gmx dot net

Between 4.8.0 and 4.8.1, SVN commit 199331 changed the implementation of
compatibility-chrono.cc. Up to that point, it basically included chrono.cc
which provided implementations for system_clock and steady_clock, but bound
them to specific symbol versions. That commit changes the approach to make use
of an inline namespace, which is certainly more portable. The compatibility
implementation was modified to no longer include chrono.cc but instead
duplicate part of its functionality.

And therein lies the rub: only PART of the implementation has been copied to
the compatibility file. Now system_clock is included there, but steady_clock is
not. Which causes ABI breakage, as observed in https://bugs.gentoo.org/513386.



More information about the Gcc-bugs mailing list