Make ListeningReporter final

In general, for Catch2 v3 we are making virtual types `final`,
unless they were explicitly designed to be derived-from.
`ListeningReporter` is definitely not designed to be derived-from.
This commit is contained in:
Martin Hořeňovský 2020-03-09 21:09:12 +01:00
parent 727b26ab35
commit a15ffb735d
No known key found for this signature in database
GPG Key ID: DE48307B8B0D381A
2 changed files with 6 additions and 1 deletions

View File

@ -56,11 +56,16 @@
* Lvalues of composed matchers cannot be composed further * Lvalues of composed matchers cannot be composed further
* Uses of `REGISTER_TEST_CASE` macro need to be followed by a semicolon * Uses of `REGISTER_TEST_CASE` macro need to be followed by a semicolon
* This does not change `TEST_CASE` and friends in any way * This does not change `TEST_CASE` and friends in any way
* `IStreamingReporter::IsMulti` member function was removed
* This is _very_ unlikely to actually affect anyone, as it was default-implemented in the interface, and only used internally
* `ListeningReporter` is now final
### Fixes ### Fixes
* The `INFO` macro no longer contains superfluous semicolon (#1456) * The `INFO` macro no longer contains superfluous semicolon (#1456)
* The `--list*` family of command line flags now return 0 on success (#1410, #1146) * The `--list*` family of command line flags now return 0 on success (#1410, #1146)
### Other changes ### Other changes
* `CATCH_CONFIG_DISABLE_MATCHERS` no longer exists. * `CATCH_CONFIG_DISABLE_MATCHERS` no longer exists.
* If you do not want to use Matchers in a TU, do not include their header. * If you do not want to use Matchers in a TU, do not include their header.

View File

@ -11,7 +11,7 @@
namespace Catch { namespace Catch {
class ListeningReporter : public IStreamingReporter { class ListeningReporter final : public IStreamingReporter {
using Reporters = std::vector<IStreamingReporterPtr>; using Reporters = std::vector<IStreamingReporterPtr>;
Reporters m_listeners; Reporters m_listeners;
IStreamingReporterPtr m_reporter = nullptr; IStreamingReporterPtr m_reporter = nullptr;