-
- Downloads
libstdc++: Remove extern "C" from Ryu sources
floating_to_chars.cc includes the Ryu sources into an anonymous namespace as a convenient way to give all its symbols internal linkage. But an entity declared extern "C" always has external linkage even from within an anonymous namespace, so this trick doesn't work in the presence of extern "C", and it causes the Ryu function generic_to_chars to be visible from libstdc++.a. This patch removes the only use of extern "C" from our local copy of Ryu along with some declarations for never-defined functions that GCC now warns about. libstdc++-v3/ChangeLog: * src/c++17/ryu/LOCAL_PATCHES: Update. * src/c++17/ryu/ryu_generic_128.h: Remove extern "C". Remove declarations for never-defined functions. * testsuite/20_util/to_chars/4.cc: New test.
Showing
- libstdc++-v3/src/c++17/ryu/LOCAL_PATCHES 1 addition, 0 deletionslibstdc++-v3/src/c++17/ryu/LOCAL_PATCHES
- libstdc++-v3/src/c++17/ryu/ryu_generic_128.h 3 additions, 18 deletionslibstdc++-v3/src/c++17/ryu/ryu_generic_128.h
- libstdc++-v3/testsuite/20_util/to_chars/4.cc 36 additions, 0 deletionslibstdc++-v3/testsuite/20_util/to_chars/4.cc
Loading
Please register or sign in to comment