diff options
author | Abseil Team <absl-team@google.com> | 2022-01-18 13:02:48 -0800 |
---|---|---|
committer | dinord <dino.radakovich@gmail.com> | 2022-01-19 00:50:38 -0500 |
commit | 9bb42857112ad13b23de4333fbb75eb47db9de95 (patch) | |
tree | d892ca8ef4eb337cdd16a55332991c5c21d6feb7 /absl/status/statusor.h | |
parent | c59e7e59f5d29619ddc07fcb59be3dcba9585814 (diff) |
Export of internal Abseil changes
--
7f5caec21a1a88db6486b8bc2e5f6d5baba076ed by Derek Mauro <dmauro@google.com>:
Tag absl::StatusOr with [[nodiscard]] when it is available
[[nodiscard]] provides better diagnostics on classes than the current
ABSL_MUST_USE_RESULT, which expands to
__attribute__((warn_unused_result))
Ideally we would make ABSL_MUST_USE_RESULT expand to [[nodiscard]], but
we would need to fix all code to build with [[nodiscard]] first.
PiperOrigin-RevId: 422628161
--
236be69f0f34ccaa3adc831075613847797e6557 by Jorg Brown <jorg@google.com>:
Make sure all of absl/strings compiles even with -Wsign-compare and -Wconversion warnings.
PiperOrigin-RevId: 422573904
--
005669883a8794e6d19dc4bbb4f0e18032e2fbc9 by Chris Kennelly <ckennelly@google.com>:
Include sampling stride in hashtable sampling data.
This allows us to weight each sample to control for our sampling rate.
PiperOrigin-RevId: 421886935
--
78046ce6b429b9f5b6c97b05e8448a791db93bbe by Abseil Team <absl-team@google.com>:
Use __builtin_bit_cast for absl::bit_cast when possible
This makes absl::bit_cast match the requirements of the standard when compiler support exists.
PiperOrigin-RevId: 421883999
--
f397461f4bbeabd32437df0f2275663aeb51adb2 by Derek Mauro <dmauro@google.com>:
Tag absl::Status with [[nodiscard]] when it is available
[[nodiscard]] provides better diagnostics on classes than the current
ABSL_MUST_USE_RESULT, which expands to
__attribute__((warn_unused_result))
Ideally we would make ABSL_MUST_USE_RESULT expand to [[nodiscard]], but
we would need to fix all code to build with [[nodiscard]] first.
PiperOrigin-RevId: 421825565
GitOrigin-RevId: 7f5caec21a1a88db6486b8bc2e5f6d5baba076ed
Change-Id: I760b45b68f6012809c70c2a584e4144a99f98733
Diffstat (limited to 'absl/status/statusor.h')
-rw-r--r-- | absl/status/statusor.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/absl/status/statusor.h b/absl/status/statusor.h index c051fbb3..d6ebdc2b 100644 --- a/absl/status/statusor.h +++ b/absl/status/statusor.h @@ -106,7 +106,13 @@ class BadStatusOrAccess : public std::exception { // Returned StatusOr objects may not be ignored. template <typename T> +#if ABSL_HAVE_CPP_ATTRIBUTE(nodiscard) +// TODO(b/176172494): ABSL_MUST_USE_RESULT should expand to the more strict +// [[nodiscard]]. For now, just use [[nodiscard]] directly when it is available. +class [[nodiscard]] StatusOr; +#else class ABSL_MUST_USE_RESULT StatusOr; +#endif // ABSL_HAVE_CPP_ATTRIBUTE(nodiscard) // absl::StatusOr<T> // |