Browse Source

Trade: MSVC, your insistence on deprecation-as-error is not helping.

pull/240/head
Vladimír Vondruš 5 years ago
parent
commit
3629b5d4c8
  1. 9
      src/Magnum/Trade/AbstractImporter.h
  2. 2
      src/Magnum/Trade/Test/AbstractImporterTest.cpp

9
src/Magnum/Trade/AbstractImporter.h

@ -1706,7 +1706,14 @@ class MAGNUM_TRADE_EXPORT AbstractImporter: public PluginManager::AbstractManagi
* @m_deprecated_since_latest Implement @ref doOpenData(Containers::Array<char>&&, DataFlags)
* instead.
*/
virtual CORRADE_DEPRECATED("implement doOpenData(Containers::Array<char>&&, DataFlags) instead") void doOpenData(Containers::ArrayView<const char> data);
/* MSVC warns when overriding such methods and there's no way to
suppress that warning, making the RT build (which treats deprecation
warnings as errors) fail and other builds extremely noisy. So
disabling those on MSVC. */
#if !(defined(CORRADE_TARGET_MSVC) && !defined(CORRADE_TARGET_CLANG))
CORRADE_DEPRECATED("implement doOpenData(Containers::Array<char>&&, DataFlags) instead")
#endif
virtual void doOpenData(Containers::ArrayView<const char> data);
#endif
/** @brief Implementation for @ref openState() */

2
src/Magnum/Trade/Test/AbstractImporterTest.cpp

@ -667,14 +667,12 @@ void AbstractImporterTest::openDataDeprecatedFallback() {
bool doIsOpened() const override { return _opened; }
void doClose() override { _opened = false; }
CORRADE_IGNORE_DEPRECATED_PUSH
void doOpenData(Containers::ArrayView<const char> data) override {
CORRADE_COMPARE_AS(data,
Containers::arrayView({'\xa5'}),
TestSuite::Compare::Container);
_opened = true;
}
CORRADE_IGNORE_DEPRECATED_POP
bool _opened = false;
} importer;

Loading…
Cancel
Save