@@ -1052,30 +1052,28 @@ typedef unsigned int char32_t;
1052
1052
# define _LIBCPP_CONSTEXPR_AFTER_CXX17
1053
1053
#endif
1054
1054
1055
- // The _LIBCPP_NODISCARD_ATTRIBUTE should only be used to define other
1056
- // NODISCARD macros to the correct attribute.
1057
1055
#if __has_cpp_attribute(nodiscard) || defined(_LIBCPP_COMPILER_MSVC)
1058
- # define _LIBCPP_NODISCARD_ATTRIBUTE [[nodiscard]]
1056
+ # define _LIBCPP_NODISCARD [[nodiscard]]
1059
1057
#elif defined(_LIBCPP_COMPILER_CLANG_BASED) && !defined(_LIBCPP_CXX03_LANG)
1060
- # define _LIBCPP_NODISCARD_ATTRIBUTE [[clang::warn_unused_result]]
1058
+ # define _LIBCPP_NODISCARD [[clang::warn_unused_result]]
1061
1059
#else
1062
1060
// We can't use GCC's [[gnu::warn_unused_result]] and
1063
1061
// __attribute__((warn_unused_result)), because GCC does not silence them via
1064
1062
// (void) cast.
1065
- # define _LIBCPP_NODISCARD_ATTRIBUTE
1063
+ # define _LIBCPP_NODISCARD
1066
1064
#endif
1067
1065
1068
1066
// _LIBCPP_NODISCARD_EXT may be used to apply [[nodiscard]] to entities not
1069
1067
// specified as such as an extension.
1070
1068
#if defined(_LIBCPP_ENABLE_NODISCARD) && !defined(_LIBCPP_DISABLE_NODISCARD_EXT)
1071
- # define _LIBCPP_NODISCARD_EXT _LIBCPP_NODISCARD_ATTRIBUTE
1069
+ # define _LIBCPP_NODISCARD_EXT _LIBCPP_NODISCARD
1072
1070
#else
1073
1071
# define _LIBCPP_NODISCARD_EXT
1074
1072
#endif
1075
1073
1076
1074
#if !defined(_LIBCPP_DISABLE_NODISCARD_AFTER_CXX17) && \
1077
1075
(_LIBCPP_STD_VER > 17 || defined(_LIBCPP_ENABLE_NODISCARD))
1078
- # define _LIBCPP_NODISCARD_AFTER_CXX17 _LIBCPP_NODISCARD_ATTRIBUTE
1076
+ # define _LIBCPP_NODISCARD_AFTER_CXX17 _LIBCPP_NODISCARD
1079
1077
#else
1080
1078
# define _LIBCPP_NODISCARD_AFTER_CXX17
1081
1079
#endif
0 commit comments