Skip to content

Commit 5fe3d4a

Browse files
committed
[libc++][NFC] Use [[__nodiscard__]] unconditionally
1 parent 319f4c0 commit 5fe3d4a

File tree

10 files changed

+19
-28
lines changed

10 files changed

+19
-28
lines changed

libcxx/include/__algorithm/equal.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ _LIBCPP_PUSH_MACROS
3636
_LIBCPP_BEGIN_NAMESPACE_STD
3737

3838
template <class _InputIterator1, class _InputIterator2, class _BinaryPredicate>
39-
_LIBCPP_NODISCARD inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool __equal_iter_impl(
39+
[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool __equal_iter_impl(
4040
_InputIterator1 __first1, _InputIterator1 __last1, _InputIterator2 __first2, _BinaryPredicate& __pred) {
4141
for (; __first1 != __last1; ++__first1, (void)++__first2)
4242
if (!__pred(*__first1, *__first2))
@@ -50,7 +50,7 @@ template <class _Tp,
5050
__enable_if_t<__desugars_to<__equal_tag, _BinaryPredicate, _Tp, _Up>::value && !is_volatile<_Tp>::value &&
5151
!is_volatile<_Up>::value && __libcpp_is_trivially_equality_comparable<_Tp, _Up>::value,
5252
int> = 0>
53-
_LIBCPP_NODISCARD inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
53+
[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
5454
__equal_iter_impl(_Tp* __first1, _Tp* __last1, _Up* __first2, _BinaryPredicate&) {
5555
return std::__constexpr_memcmp_equal(__first1, __first2, __element_count(__last1 - __first1));
5656
}
@@ -85,7 +85,7 @@ __equal(_InputIterator1 __first1,
8585
}
8686

8787
template <class _Iter1, class _Sent1, class _Iter2, class _Sent2, class _Pred, class _Proj1, class _Proj2>
88-
_LIBCPP_NODISCARD inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool __equal_impl(
88+
[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool __equal_impl(
8989
_Iter1 __first1, _Sent1 __last1, _Iter2 __first2, _Sent2 __last2, _Pred& __comp, _Proj1& __proj1, _Proj2& __proj2) {
9090
while (__first1 != __last1 && __first2 != __last2) {
9191
if (!std::__invoke(__comp, std::__invoke(__proj1, *__first1), std::__invoke(__proj2, *__first2)))
@@ -105,7 +105,7 @@ template <class _Tp,
105105
__is_identity<_Proj2>::value && !is_volatile<_Tp>::value && !is_volatile<_Up>::value &&
106106
__libcpp_is_trivially_equality_comparable<_Tp, _Up>::value,
107107
int> = 0>
108-
_LIBCPP_NODISCARD inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
108+
[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
109109
__equal_impl(_Tp* __first1, _Tp* __last1, _Up* __first2, _Up*, _Pred&, _Proj1&, _Proj2&) {
110110
return std::__constexpr_memcmp_equal(__first1, __first2, __element_count(__last1 - __first1));
111111
}

libcxx/include/__algorithm/find_end.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 _Iter1 __find_end(
184184
}
185185

186186
template <class _ForwardIterator1, class _ForwardIterator2, class _BinaryPredicate>
187-
_LIBCPP_NODISCARD inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 _ForwardIterator1 __find_end_classic(
187+
[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 _ForwardIterator1 __find_end_classic(
188188
_ForwardIterator1 __first1,
189189
_ForwardIterator1 __last1,
190190
_ForwardIterator2 __first2,

libcxx/include/__bit/countl.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,15 @@ _LIBCPP_PUSH_MACROS
2424

2525
_LIBCPP_BEGIN_NAMESPACE_STD
2626

27-
_LIBCPP_NODISCARD inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_clz(unsigned __x) _NOEXCEPT {
27+
[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_clz(unsigned __x) _NOEXCEPT {
2828
return __builtin_clz(__x);
2929
}
3030

31-
_LIBCPP_NODISCARD inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_clz(unsigned long __x) _NOEXCEPT {
31+
[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_clz(unsigned long __x) _NOEXCEPT {
3232
return __builtin_clzl(__x);
3333
}
3434

35-
_LIBCPP_NODISCARD inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_clz(unsigned long long __x) _NOEXCEPT {
35+
[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_clz(unsigned long long __x) _NOEXCEPT {
3636
return __builtin_clzll(__x);
3737
}
3838

libcxx/include/__bit/countr.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,15 @@ _LIBCPP_PUSH_MACROS
2323

2424
_LIBCPP_BEGIN_NAMESPACE_STD
2525

26-
_LIBCPP_NODISCARD inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_ctz(unsigned __x) _NOEXCEPT {
26+
[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_ctz(unsigned __x) _NOEXCEPT {
2727
return __builtin_ctz(__x);
2828
}
2929

30-
_LIBCPP_NODISCARD inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_ctz(unsigned long __x) _NOEXCEPT {
30+
[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_ctz(unsigned long __x) _NOEXCEPT {
3131
return __builtin_ctzl(__x);
3232
}
3333

34-
_LIBCPP_NODISCARD inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_ctz(unsigned long long __x) _NOEXCEPT {
34+
[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR int __libcpp_ctz(unsigned long long __x) _NOEXCEPT {
3535
return __builtin_ctzll(__x);
3636
}
3737

libcxx/include/__config

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1448,25 +1448,16 @@ __sanitizer_verify_double_ended_contiguous_container(const void*, const void*, c
14481448
# define _LIBCPP_USING_IF_EXISTS
14491449
# endif
14501450

1451-
# if __has_cpp_attribute(nodiscard)
1452-
# define _LIBCPP_NODISCARD [[__nodiscard__]]
1453-
# else
1454-
// We can't use GCC's [[gnu::warn_unused_result]] and
1455-
// __attribute__((warn_unused_result)), because GCC does not silence them via
1456-
// (void) cast.
1457-
# define _LIBCPP_NODISCARD
1458-
# endif
1459-
14601451
// _LIBCPP_NODISCARD_EXT may be used to apply [[nodiscard]] to entities not
14611452
// specified as such as an extension.
14621453
# if !defined(_LIBCPP_DISABLE_NODISCARD_EXT)
1463-
# define _LIBCPP_NODISCARD_EXT _LIBCPP_NODISCARD
1454+
# define _LIBCPP_NODISCARD_EXT [[__nodiscard__]]
14641455
# else
14651456
# define _LIBCPP_NODISCARD_EXT
14661457
# endif
14671458

14681459
# if _LIBCPP_STD_VER >= 20 || !defined(_LIBCPP_DISABLE_NODISCARD_EXT)
1469-
# define _LIBCPP_NODISCARD_AFTER_CXX17 _LIBCPP_NODISCARD
1460+
# define _LIBCPP_NODISCARD_AFTER_CXX17 [[__nodiscard__]]
14701461
# else
14711462
# define _LIBCPP_NODISCARD_AFTER_CXX17
14721463
# endif

libcxx/include/__functional/identity.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ struct __is_identity : false_type {};
2626

2727
struct __identity {
2828
template <class _Tp>
29-
_LIBCPP_NODISCARD _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR _Tp&& operator()(_Tp&& __t) const _NOEXCEPT {
29+
[[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR _Tp&& operator()(_Tp&& __t) const _NOEXCEPT {
3030
return std::forward<_Tp>(__t);
3131
}
3232

libcxx/include/__memory/allocate_at_least.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ struct __allocation_result {
3535
};
3636

3737
template <class _Alloc>
38-
_LIBCPP_NODISCARD _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR
38+
[[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR
3939
__allocation_result<typename allocator_traits<_Alloc>::pointer>
4040
__allocate_at_least(_Alloc& __alloc, size_t __n) {
4141
return {__alloc.allocate(__n), __n};

libcxx/include/__memory/assume_aligned.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
_LIBCPP_BEGIN_NAMESPACE_STD
2424

2525
template <size_t _Np, class _Tp>
26-
_LIBCPP_NODISCARD _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 _Tp* __assume_aligned(_Tp* __ptr) {
26+
[[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 _Tp* __assume_aligned(_Tp* __ptr) {
2727
static_assert(_Np != 0 && (_Np & (_Np - 1)) == 0, "std::assume_aligned<N>(p) requires N to be a power of two");
2828

2929
if (__libcpp_is_constant_evaluated()) {

libcxx/include/queue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -424,7 +424,7 @@ public:
424424
swap(c, __q.c);
425425
}
426426

427-
_LIBCPP_NODISCARD _LIBCPP_HIDE_FROM_ABI const _Container& __get_container() const { return c; }
427+
[[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI const _Container& __get_container() const { return c; }
428428

429429
template <class _T1, class _OtherContainer>
430430
friend _LIBCPP_HIDE_FROM_ABI bool
@@ -694,7 +694,7 @@ public:
694694
_LIBCPP_HIDE_FROM_ABI void swap(priority_queue& __q)
695695
_NOEXCEPT_(__is_nothrow_swappable<container_type>::value&& __is_nothrow_swappable<value_compare>::value);
696696

697-
_LIBCPP_NODISCARD _LIBCPP_HIDE_FROM_ABI const _Container& __get_container() const { return c; }
697+
[[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI const _Container& __get_container() const { return c; }
698698
};
699699

700700
#if _LIBCPP_STD_VER >= 17

libcxx/include/stack

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ public:
276276
swap(c, __s.c);
277277
}
278278

279-
_LIBCPP_NODISCARD _LIBCPP_HIDE_FROM_ABI const _Container& __get_container() const { return c; }
279+
[[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI const _Container& __get_container() const { return c; }
280280

281281
template <class _T1, class _OtherContainer>
282282
friend bool operator==(const stack<_T1, _OtherContainer>& __x, const stack<_T1, _OtherContainer>& __y);

0 commit comments

Comments
 (0)