re PR c/81854 (weak alias of an incompatible symbol accepted)

libstdc++/ChangeLog:

	PR c/81854
	* src/c++98/compatibility.cc (_GLIBCXX_3_4_SYMVER): Declare alias
	target as a C++ function with no prototype.
	(_GLIBCXX_3_4_5_SYMVER): Ditto.

From-SVN: r251211
This commit is contained in:
Martin Sebor 2017-08-20 21:31:39 +00:00 committed by Martin Sebor
parent 1104d918b5
commit be56159c65
2 changed files with 9 additions and 2 deletions

View File

@ -1,3 +1,10 @@
2017-08-20 Martin Sebor <msebor@redhat.com>
PR c/81854
* src/c++98/compatibility.cc (_GLIBCXX_3_4_SYMVER): Declare alias
target as a C++ function with no prototype.
(_GLIBCXX_3_4_5_SYMVER): Ditto.
2017-08-20 John David Anglin <danglin@gcc.gnu.org>
PR testsuite/81056

View File

@ -367,13 +367,13 @@ _GLIBCXX_END_NAMESPACE_VERSION
#define _GLIBCXX_3_4_SYMVER(XXname, name) \
extern "C" void \
_X##name() \
_X##name(...) \
__attribute__ ((alias(#XXname))); \
asm (".symver " "_X" #name "," #name "@GLIBCXX_3.4");
#define _GLIBCXX_3_4_5_SYMVER(XXname, name) \
extern "C" void \
_Y##name() \
_Y##name(...) \
__attribute__ ((alias(#XXname))); \
asm (".symver " "_Y" #name "," #name "@@GLIBCXX_3.4.5");