fd/ops: Fix accept() address return

Error cases and EOF don't return addresses.

Change-Id: I7c72e64f70d7b74f0761edd40e135ffaa2e9e325
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/src/fd/impl.cpp b/src/fd/impl.cpp
index 40ce7b3..55efbab 100644
--- a/src/fd/impl.cpp
+++ b/src/fd/impl.cpp
@@ -123,7 +123,7 @@
     CHECK_ERRNO(::listen(get(), backlog), "listen");
 }
 
-std::tuple<std::optional<int>, std::span<std::byte>>
+std::optional<std::tuple<int, std::span<std::byte>>>
     FdImpl::accept(std::span<std::byte> sockaddr)
 {
     socklen_t len = sockaddr.size();
@@ -133,7 +133,7 @@
     {
         if (errno == EAGAIN || errno == EWOULDBLOCK)
         {
-            return {};
+            return std::nullopt;
         }
         throw util::makeSystemError(errno, "accept");
     }