[ox] Fix GCC warnings

This commit is contained in:
Gary Talent 2019-07-31 00:06:47 -05:00
parent df8e1d31d6
commit 6138d0a37e
3 changed files with 11 additions and 5 deletions

View File

@ -102,7 +102,7 @@ Error MetalClawReader::field(const char*, SerStr val) {
return OxError(MC_BUFFENDED); return OxError(MC_BUFFENDED);
} }
std::size_t bytesRead = 0; std::size_t bytesRead = 0;
auto [len, _] = mc::decodeInteger<StringLength>(&m_buff[m_buffIt], m_buffLen - m_buffIt, &bytesRead); len = mc::decodeInteger<StringLength>(&m_buff[m_buffIt], m_buffLen - m_buffIt, &bytesRead).value;
if (pass) { if (pass) {
m_buffIt += sizeof(ArrayLength); m_buffIt += sizeof(ArrayLength);
} }
@ -114,8 +114,8 @@ Error MetalClawReader::field(const char*, SerStr val) {
if (m_fieldPresence.get(m_field)) { if (m_fieldPresence.get(m_field)) {
// read the length // read the length
std::size_t bytesRead = 0; std::size_t bytesRead = 0;
auto [len, _] = mc::decodeInteger<StringLength>(&m_buff[m_buffIt], m_buffLen - m_buffIt, &bytesRead); auto len = mc::decodeInteger<StringLength>(&m_buff[m_buffIt], m_buffLen - m_buffIt, &bytesRead);
return len; return len.value;
} }
return 0; return 0;
} }

View File

@ -75,11 +75,11 @@ struct ValErr {
return value; return value;
} }
constexpr bool ok() const noexcept { [[nodiscard]] constexpr bool ok() const noexcept {
return error == 0; return error == 0;
} }
constexpr ox::Error get(T *val) noexcept { [[nodiscard]] constexpr ox::Error get(T *val) noexcept {
*val = value; *val = value;
return error; return error;
} }

View File

@ -28,6 +28,8 @@ class Integer: Base {
constexpr explicit Integer(T i) noexcept; constexpr explicit Integer(T i) noexcept;
constexpr Integer(const Integer<T, Base> &i) noexcept;
constexpr Integer<T, Base> operator=(Integer<T, Base> i) noexcept; constexpr Integer<T, Base> operator=(Integer<T, Base> i) noexcept;
constexpr Integer<T, Base> operator==(Integer<T, Base> i) const noexcept; constexpr Integer<T, Base> operator==(Integer<T, Base> i) const noexcept;
@ -105,6 +107,10 @@ constexpr Integer<T, Base>::Integer(T i) noexcept {
m_i = i; m_i = i;
} }
template<typename T, class Base>
constexpr Integer<T, Base>::Integer(const Integer<T, Base> &i) noexcept:m_i(i.m_i) {
}
template<typename T, class Base> template<typename T, class Base>
constexpr Integer<T, Base> Integer<T, Base>::operator=(Integer<T, Base> i) noexcept { constexpr Integer<T, Base> Integer<T, Base>::operator=(Integer<T, Base> i) noexcept {
return Integer<T, Base>(m_i = i.m_i); return Integer<T, Base>(m_i = i.m_i);