aboutsummaryrefslogtreecommitdiff
path: root/absl/numeric/int128.h
diff options
context:
space:
mode:
authorAbseil Team <absl-team@google.com>2021-06-08 18:40:58 -0700
committerAndy Getz <durandal@google.com>2021-06-08 21:47:46 -0400
commitf72972654b69085b1d58fde04c618b77d3ac6935 (patch)
treec2bdbd49465093e5035c5cdb695cda4b86854710 /absl/numeric/int128.h
parent17c954d90d5661e27db8fc5f086085690a8372d9 (diff)
downloadabseil-f72972654b69085b1d58fde04c618b77d3ac6935.tar.gz
abseil-f72972654b69085b1d58fde04c618b77d3ac6935.tar.bz2
abseil-f72972654b69085b1d58fde04c618b77d3ac6935.zip
Export of internal Abseil changes
-- 72ce5b636488f17753d110ec18f57132d6180db3 by Derek Mauro <dmauro@google.com>: Update GoogleTest version used by Abseil PiperOrigin-RevId: 378296419 -- 1eaa36f65315a1cb95c95dfee0bc31307d280d18 by Abseil Team <absl-team@google.com>: Define unary + operators for absl::int128 and absl::uint128. These are rarely used but apparently missing. PiperOrigin-RevId: 377975179 -- 1a029d6ff8f9e21ddf0b89949be04c0a56661359 by Abseil Team <absl-team@google.com>: Remove gratuitous reinterpret_cast. PiperOrigin-RevId: 377894806 GitOrigin-RevId: 72ce5b636488f17753d110ec18f57132d6180db3 Change-Id: I8a06f69b3489c9aef8260fd271bde2a55f01807f
Diffstat (limited to 'absl/numeric/int128.h')
-rw-r--r--absl/numeric/int128.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/absl/numeric/int128.h b/absl/numeric/int128.h
index 235361a8..198aa195 100644
--- a/absl/numeric/int128.h
+++ b/absl/numeric/int128.h
@@ -810,6 +810,14 @@ inline bool operator>=(uint128 lhs, uint128 rhs) { return !(lhs < rhs); }
// Unary operators.
+constexpr inline uint128 operator+(uint128 val) {
+ return val;
+}
+
+constexpr inline int128 operator+(int128 val) {
+ return val;
+}
+
inline uint128 operator-(uint128 val) {
uint64_t hi = ~Uint128High64(val);
uint64_t lo = ~Uint128Low64(val) + 1;