From ec282adbde1bbbb5108a25a27afc2cbe7f8fa7f0 Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Tue, 28 May 2024 11:55:17 -0400 Subject: [PATCH] cpp-common/bt2c: adjust syntax of operator"" to please g++ 4.8 Fixes: CXX plugins/ctf/fs-src/data-stream-file.lo In file included from /home/smarchi/src/babeltrace/src/plugins/ctf/fs-src/data-stream-file.hpp:20:0, from /home/smarchi/src/babeltrace/src/plugins/ctf/fs-src/data-stream-file.cpp:20: /home/smarchi/src/babeltrace/src/cpp-common/bt2c/data-len.hpp:179:23: error: missing space between '""' and suffix identifier static inline DataLen operator""_bits(const unsigned long long val) noexcept ^ Change-Id: Iab7ab1273f13dd55735310f786a0bb4df63c967c Signed-off-by: Simon Marchi Reviewed-on: https://review.lttng.org/c/babeltrace/+/12794 Reviewed-by: Philippe Proulx --- src/cpp-common/bt2c/data-len.hpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/cpp-common/bt2c/data-len.hpp b/src/cpp-common/bt2c/data-len.hpp index 55760f49..72167e08 100644 --- a/src/cpp-common/bt2c/data-len.hpp +++ b/src/cpp-common/bt2c/data-len.hpp @@ -176,42 +176,44 @@ static inline DataLen operator*(const DataLen len, const unsigned long long mul) namespace literals { namespace datalen { -static inline DataLen operator""_bits(const unsigned long long val) noexcept +/* The spaces between `operator""` and the suffixes is to please g++ 4.8. */ + +static inline DataLen operator"" _bits(const unsigned long long val) noexcept { return DataLen::fromBits(val); } -static inline DataLen operator""_KiBits(const unsigned long long val) noexcept +static inline DataLen operator"" _KiBits(const unsigned long long val) noexcept { return DataLen::fromBits(safeMul(val, 1024ULL)); } -static inline DataLen operator""_MiBits(const unsigned long long val) noexcept +static inline DataLen operator"" _MiBits(const unsigned long long val) noexcept { return DataLen::fromBits(safeMul(val, 1024ULL * 1024)); } -static inline DataLen operator""_GiBits(const unsigned long long val) noexcept +static inline DataLen operator"" _GiBits(const unsigned long long val) noexcept { return DataLen::fromBits(safeMul(val, 1024ULL * 1024 * 1024)); } -static inline DataLen operator""_bytes(const unsigned long long val) noexcept +static inline DataLen operator"" _bytes(const unsigned long long val) noexcept { return DataLen::fromBytes(val); } -static inline DataLen operator""_KiBytes(const unsigned long long val) noexcept +static inline DataLen operator"" _KiBytes(const unsigned long long val) noexcept { return DataLen::fromBytes(safeMul(val, 1024ULL)); } -static inline DataLen operator""_MiBytes(const unsigned long long val) noexcept +static inline DataLen operator"" _MiBytes(const unsigned long long val) noexcept { return DataLen::fromBytes(safeMul(val, 1024ULL * 1024)); } -static inline DataLen operator""_GiBytes(const unsigned long long val) noexcept +static inline DataLen operator"" _GiBytes(const unsigned long long val) noexcept { return DataLen::fromBytes(safeMul(val, 1024ULL * 1024 * 1024)); } -- 2.34.1