On Thu, May 23, 2013 at 10:56:25PM +0200, Rainer Orth wrote: > >> I think std::chrono::steady_clock::now() needs to be protected with > >> !(__sun__ && __svr4__) in GLIBCXX_3.4.17 since it only became available > >> by default with Jonathan's patch. > > > > Ah, I see, gnu.ver has some > > #ifdef HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT > > #endif > > guards there, does it work if you add it around the > > GLIBCXX_3.4.17 std::chrono::steady_clock::now() definition? > > If I do so, I would probably get an abi_check failure: with your patch, > std::chrono::steady_clock::now() ends up in GLIBCXX_3.4.19 while it > should appear in GLIBCXX_3.4.20 since this is new in GCC 4.9.
In that case, either the --enable-libstdcxx-time=auto patch needs to be backported to 4.8.1, or at least a small portion of it (do that auto thing on Solaris only)? Have steady_clock::now() as @GLIBCXX_3.4.17 + @@GLIBCXX_3.4.19 on Linux, @@GLIBCXX_3.4.20 on Solaris, something else on other OSes would be quite confusing. > > Seems the solaris baseline_symbols.txt files don't meantion > > this symbol, thus it wasn't exported before and thus the > > compat definition there isn't really needed for Solaris. > > Right, it only got enable by defaulting --enable-libstdcxx-time to auto. Jakub