Skip to content

Commit

Permalink
Match SPDLOG_CONSTEXPR_FUNC to FMT_CONSTEXPR (#2901)
Browse files Browse the repository at this point in the history
* Modify the condition of SPDLOG_CONSTEXPR_FUNC to match that of fmt
  • Loading branch information
kkraus14 committed Oct 13, 2023
1 parent 508d20f commit 0c4fb03
Showing 1 changed file with 13 additions and 4 deletions.
17 changes: 13 additions & 4 deletions include/spdlog/common.h
Original file line number Diff line number Diff line change
Expand Up @@ -65,14 +65,23 @@
#if defined(_MSC_VER) && (_MSC_VER < 1900)
#define SPDLOG_NOEXCEPT _NOEXCEPT
#define SPDLOG_CONSTEXPR
#define SPDLOG_CONSTEXPR_FUNC inline
#else
#define SPDLOG_NOEXCEPT noexcept
#define SPDLOG_CONSTEXPR constexpr
#if __cplusplus >= 201402L
#define SPDLOG_CONSTEXPR_FUNC constexpr
#endif

// If building with std::format, can just use constexpr, otherwise if building with fmt
// SPDLOG_CONSTEXPR_FUNC needs to be set the same as FMT_CONSTEXPR to avoid situations where
// a constexpr function in spdlog could end up calling a non-constexpr function in fmt
// depending on the compiler
// If fmt determines it can't use constexpr, we should inline the function instead
#ifdef SPDLOG_USE_STD_FORMAT
#define SPDLOG_CONSTEXPR_FUNC constexpr
#else // Being built with fmt
#if FMT_USE_CONSTEXPR
#define SPDLOG_CONSTEXPR_FUNC FMT_CONSTEXPR
#else
#define SPDLOG_CONSTEXPR_FUNC inline
#define SPDLOG_CONSTEXPR_FUNC inline
#endif
#endif

Expand Down

0 comments on commit 0c4fb03

Please sign in to comment.