general: fixes for gcc 13
This commit is contained in:
		@@ -126,6 +126,17 @@ else()
 | 
			
		||||
        add_compile_options("-stdlib=libc++")
 | 
			
		||||
    endif()
 | 
			
		||||
 | 
			
		||||
    # GCC bugs
 | 
			
		||||
    if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "12" AND CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
 | 
			
		||||
        # These diagnostics would be great if they worked, but are just completely broken
 | 
			
		||||
        # and produce bogus errors on external libraries like fmt.
 | 
			
		||||
        add_compile_options(
 | 
			
		||||
            -Wno-array-bounds
 | 
			
		||||
            -Wno-stringop-overread
 | 
			
		||||
            -Wno-stringop-overflow
 | 
			
		||||
        )
 | 
			
		||||
    endif()
 | 
			
		||||
 | 
			
		||||
    # Set file offset size to 64 bits.
 | 
			
		||||
    #
 | 
			
		||||
    # On modern Unixes, this is typically already the case. The lone exception is
 | 
			
		||||
 
 | 
			
		||||
@@ -96,10 +96,6 @@ public:
 | 
			
		||||
            return m_node == rhs.m_node;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        constexpr bool operator!=(const Iterator& rhs) const {
 | 
			
		||||
            return !(*this == rhs);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        constexpr pointer operator->() const {
 | 
			
		||||
            return m_node;
 | 
			
		||||
        }
 | 
			
		||||
@@ -324,10 +320,6 @@ public:
 | 
			
		||||
            return m_impl == rhs.m_impl;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        constexpr bool operator!=(const Iterator& rhs) const {
 | 
			
		||||
            return !(*this == rhs);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        constexpr pointer operator->() const {
 | 
			
		||||
            return Traits::GetParent(std::addressof(*m_impl));
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
@@ -116,7 +116,6 @@ public:
 | 
			
		||||
 | 
			
		||||
    // Comparison operators.
 | 
			
		||||
    constexpr bool operator==(const TypedAddress&) const = default;
 | 
			
		||||
    constexpr bool operator!=(const TypedAddress&) const = default;
 | 
			
		||||
    constexpr auto operator<=>(const TypedAddress&) const = default;
 | 
			
		||||
 | 
			
		||||
    // For convenience, also define comparison operators versus uint64_t.
 | 
			
		||||
@@ -124,10 +123,6 @@ public:
 | 
			
		||||
        return m_address == rhs;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    constexpr inline bool operator!=(uint64_t rhs) const {
 | 
			
		||||
        return m_address != rhs;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Allow getting the address explicitly, for use in accessors.
 | 
			
		||||
    constexpr inline uint64_t GetValue() const {
 | 
			
		||||
        return m_address;
 | 
			
		||||
 
 | 
			
		||||
@@ -16,9 +16,6 @@ namespace Network {
 | 
			
		||||
 | 
			
		||||
class ProxySocket : public SocketBase {
 | 
			
		||||
public:
 | 
			
		||||
    YUZU_NON_COPYABLE(ProxySocket);
 | 
			
		||||
    YUZU_NON_MOVEABLE(ProxySocket);
 | 
			
		||||
 | 
			
		||||
    explicit ProxySocket(RoomNetwork& room_network_) noexcept;
 | 
			
		||||
    ~ProxySocket() override;
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -36,13 +36,10 @@ public:
 | 
			
		||||
 | 
			
		||||
    SocketBase() = default;
 | 
			
		||||
    explicit SocketBase(SOCKET fd_) : fd{fd_} {}
 | 
			
		||||
 | 
			
		||||
    virtual ~SocketBase() = default;
 | 
			
		||||
 | 
			
		||||
    virtual SocketBase& operator=(const SocketBase&) = delete;
 | 
			
		||||
 | 
			
		||||
    // Avoid closing sockets implicitly
 | 
			
		||||
    virtual SocketBase& operator=(SocketBase&&) noexcept = delete;
 | 
			
		||||
    YUZU_NON_COPYABLE(SocketBase);
 | 
			
		||||
    YUZU_NON_MOVEABLE(SocketBase);
 | 
			
		||||
 | 
			
		||||
    virtual Errno Initialize(Domain domain, Type type, Protocol protocol) = 0;
 | 
			
		||||
 | 
			
		||||
@@ -109,14 +106,8 @@ public:
 | 
			
		||||
 | 
			
		||||
    ~Socket() override;
 | 
			
		||||
 | 
			
		||||
    Socket(const Socket&) = delete;
 | 
			
		||||
    Socket& operator=(const Socket&) = delete;
 | 
			
		||||
 | 
			
		||||
    Socket(Socket&& rhs) noexcept;
 | 
			
		||||
 | 
			
		||||
    // Avoid closing sockets implicitly
 | 
			
		||||
    Socket& operator=(Socket&&) noexcept = delete;
 | 
			
		||||
 | 
			
		||||
    Errno Initialize(Domain domain, Type type, Protocol protocol) override;
 | 
			
		||||
 | 
			
		||||
    Errno Close() override;
 | 
			
		||||
 
 | 
			
		||||
@@ -21,7 +21,7 @@ bool VerifyLogin(const std::string& host, const std::string& username, const std
 | 
			
		||||
        return username.empty();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    return username == *iter;
 | 
			
		||||
    return *iter == username;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
} // namespace WebService
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user