Skip to content

FMT_NOEXCEPT should not depend on FMT_EXCEPTIONS #801

Closed
@qis

Description

@qis

As the title suggests, FMT_NOEXCEPT should not depend on FMT_EXCEPTIONS.

This will allow std::is_nothrow_* traits to detect the actual behavior properly and things like std::move_if_noexcept to work the same way in both, normal and -fno-exceptions builds.

diff --git i/include/fmt/core.h w/include/fmt/core.h
index 1303f55..96a98f9 100644
--- i/include/fmt/core.h
+++ w/include/fmt/core.h
@@ -131,11 +131,7 @@
 #endif

 #ifndef FMT_NOEXCEPT
-# if FMT_EXCEPTIONS
 #  define FMT_NOEXCEPT FMT_DETECTED_NOEXCEPT
-# else
-#  define FMT_NOEXCEPT
-# endif
 #endif

 // This is needed because GCC still uses throw() in its headers when exceptions

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions