diff --git a/src/net/address.hpp b/src/net/address.hpp index 39f236af8a4674e6e1c32ba0d4de970290c60b18..cd7b21a9612111a19e5d0f3dec6439bb72d75a12 100644 --- a/src/net/address.hpp +++ b/src/net/address.hpp @@ -481,6 +481,13 @@ static constexpr bool is_valid_ip6addr(const char (&str)[N]) } +// Work around use of non-standard feature (not part of ISO-C++) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wpedantic" +#ifdef __clang__ +#pragma GCC diagnostic ignored "-Wgnu-string-literal-operator-template" +#endif + template <typename CharT, CharT... Cs> static constexpr auto operator"" _ipaddr() { @@ -513,6 +520,8 @@ static constexpr auto operator"" _ip6() return rmrf::net::inet_pton<AF_INET6>(str); } +#pragma GCC diagnostic pop + static constexpr uint16_t operator "" _ipport(unsigned long long port) { if (port > 65535) {