PR libstdc++/87587 prevent -Wabi warnings

The warnings about changes to empty struct parameter passing can be
ignored because the callers are all internal to the library, and so
compiled with the same -fabi-version as the function definitions.

It would be preferable to use #pragma GCC diagnostic warning "-Wabi=12"
to get warnings about any other ABI changes in future versions, but
until PR c++/87611 is fixed the warnings must be completely disabled
with #pragma GCC diagnostic ignroed "-Wabi".

	PR libstdc++/87587
	* src/c++11/cxx11-shim_facets.cc: Suppress -Wabi warnings.

From-SVN: r265163
This commit is contained in:
Jonathan Wakely 2018-10-15 13:58:51 +01:00 committed by Jonathan Wakely
parent 0df7c778ed
commit f9bd185f18
2 changed files with 12 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2018-10-15 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/87587
* src/c++11/cxx11-shim_facets.cc: Suppress -Wabi warnings.
2018-10-15 François Dumont <fdumont@gcc.gnu.org>
* include/debug/vector (vector<>::cbegin()): Use C++11 direct

View File

@ -224,6 +224,11 @@ namespace __facet_shims
void
__messages_close(other_abi, const facet*, messages_base::catalog);
#pragma GCC diagnostic push
// Suppress -Wabi=2 warnings due to empty struct argument passing changes.
// TODO This should use -Wabi=12 but that currently fails (PR c++/87611).
#pragma GCC diagnostic ignored "-Wabi"
namespace // unnamed
{
struct __shim_accessor : facet
@ -767,6 +772,8 @@ namespace __facet_shims
return m->put(s, intl, io, fill, units);
}
#pragma GCC diagnostic pop
template ostreambuf_iterator<char>
__money_put(current_abi, const facet*, ostreambuf_iterator<char>,
bool, ios_base&, char, long double, const __any_string*);