diff --git a/ip.cpp.rl b/ip.cpp.rl index 1f273665..4bb6fd79 100644 --- a/ip.cpp.rl +++ b/ip.cpp.rl @@ -20,6 +20,8 @@ #include "ip.hpp" +#include "types/casts.hpp" + #include #include @@ -84,7 +86,7 @@ ipv4::ip::operator == (const ipv4::ip &rhs) const { __octet = 0; for (auto i = octetstart; i < octetend; ++i) - __octet = __octet * 10 + *i - '0'; + __octet = __octet * 10u + sign_cast (*i - '0'); }; ipv4 := (octet %{ __octets[0] = __octet; } '.'