2022-06-21 16:19:50 +02:00
|
|
|
|
|
|
|
|
// Copyright Catch2 Authors
|
|
|
|
|
// Distributed under the Boost Software License, Version 1.0.
|
2022-10-28 11:22:53 +02:00
|
|
|
// (See accompanying file LICENSE.txt or copy at
|
2022-06-21 16:19:50 +02:00
|
|
|
// https://www.boost.org/LICENSE_1_0.txt)
|
|
|
|
|
|
|
|
|
|
// SPDX-License-Identifier: BSL-1.0
|
|
|
|
|
|
|
|
|
|
#include <catch2/internal/catch_message_info.hpp>
|
2025-12-01 22:23:51 +01:00
|
|
|
#include <catch2/internal/catch_thread_local.hpp>
|
2022-06-21 16:19:50 +02:00
|
|
|
|
|
|
|
|
namespace Catch {
|
|
|
|
|
|
2025-12-01 22:23:51 +01:00
|
|
|
namespace {
|
|
|
|
|
// Messages are owned by their individual threads, so the counter should
|
|
|
|
|
// be thread-local as well. Alternative consideration: atomic counter,
|
|
|
|
|
// so threads don't share IDs and things are easier to debug.
|
|
|
|
|
static CATCH_INTERNAL_THREAD_LOCAL unsigned int messageIDCounter = 0;
|
|
|
|
|
}
|
|
|
|
|
|
2025-08-23 00:15:53 +02:00
|
|
|
MessageInfo::MessageInfo( StringRef _macroName,
|
|
|
|
|
SourceLineInfo const& _lineInfo,
|
|
|
|
|
ResultWas::OfType _type )
|
2022-06-21 16:19:50 +02:00
|
|
|
: macroName( _macroName ),
|
|
|
|
|
lineInfo( _lineInfo ),
|
|
|
|
|
type( _type ),
|
2025-12-01 22:23:51 +01:00
|
|
|
sequence( ++messageIDCounter )
|
2022-06-21 16:19:50 +02:00
|
|
|
{}
|
|
|
|
|
|
|
|
|
|
} // end namespace Catch
|