blob: 4328f7d21f004a4a6ba1f64a46db8da090d2ec26 [file] [log] [blame]
// Copyright 2020 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include <errno.h>
#include <fuchsia/posix/llcpp/fidl.h>
// This file asserts that the errno definitions in fuchsia.posix/Errno match the ones in errno.h.
#define COMPARE(e, fidl, name) \
static_assert(e == static_cast<int32_t>(fidl), \
name " mismatch between errno.h and fuchsia.posix/Errno")
#define ASSERT_MATCHES(e) COMPARE(e, llcpp::fuchsia::posix::Errno::e##_, #e)
#define ASSERT_MATCHES_ALIASED(e) COMPARE(e, llcpp::fuchsia::posix::e##_, #e)
ASSERT_MATCHES(EPERM);
ASSERT_MATCHES(ENOENT);
ASSERT_MATCHES(ESRCH);
ASSERT_MATCHES(EINTR);
ASSERT_MATCHES(EIO);
ASSERT_MATCHES(ENXIO);
ASSERT_MATCHES(E2BIG);
ASSERT_MATCHES(ENOEXEC);
ASSERT_MATCHES(EBADF);
ASSERT_MATCHES(ECHILD);
ASSERT_MATCHES(EAGAIN);
ASSERT_MATCHES(ENOMEM);
ASSERT_MATCHES(EACCES);
ASSERT_MATCHES(EFAULT);
ASSERT_MATCHES(ENOTBLK);
ASSERT_MATCHES(EBUSY);
ASSERT_MATCHES(EEXIST);
ASSERT_MATCHES(EXDEV);
ASSERT_MATCHES(ENODEV);
ASSERT_MATCHES(ENOTDIR);
ASSERT_MATCHES(EISDIR);
ASSERT_MATCHES(EINVAL);
ASSERT_MATCHES(ENFILE);
ASSERT_MATCHES(EMFILE);
ASSERT_MATCHES(ENOTTY);
ASSERT_MATCHES(ETXTBSY);
ASSERT_MATCHES(EFBIG);
ASSERT_MATCHES(ENOSPC);
ASSERT_MATCHES(ESPIPE);
ASSERT_MATCHES(EROFS);
ASSERT_MATCHES(EMLINK);
ASSERT_MATCHES(EPIPE);
ASSERT_MATCHES(EDOM);
ASSERT_MATCHES(ERANGE);
ASSERT_MATCHES(EDEADLK);
ASSERT_MATCHES(ENAMETOOLONG);
ASSERT_MATCHES(ENOLCK);
ASSERT_MATCHES(ENOSYS);
ASSERT_MATCHES(ENOTEMPTY);
ASSERT_MATCHES(ELOOP);
ASSERT_MATCHES_ALIASED(EWOULDBLOCK);
ASSERT_MATCHES(ENOMSG);
ASSERT_MATCHES(EIDRM);
ASSERT_MATCHES(ECHRNG);
ASSERT_MATCHES(EL2NSYNC);
ASSERT_MATCHES(EL3HLT);
ASSERT_MATCHES(EL3RST);
ASSERT_MATCHES(ELNRNG);
ASSERT_MATCHES(EUNATCH);
ASSERT_MATCHES(ENOCSI);
ASSERT_MATCHES(EL2HLT);
ASSERT_MATCHES(EBADE);
ASSERT_MATCHES(EBADR);
ASSERT_MATCHES(EXFULL);
ASSERT_MATCHES(ENOANO);
ASSERT_MATCHES(EBADRQC);
ASSERT_MATCHES(EBADSLT);
ASSERT_MATCHES_ALIASED(EDEADLOCK);
ASSERT_MATCHES(EBFONT);
ASSERT_MATCHES(ENOSTR);
ASSERT_MATCHES(ENODATA);
ASSERT_MATCHES(ETIME);
ASSERT_MATCHES(ENOSR);
ASSERT_MATCHES(ENONET);
ASSERT_MATCHES(ENOPKG);
ASSERT_MATCHES(EREMOTE);
ASSERT_MATCHES(ENOLINK);
ASSERT_MATCHES(EADV);
ASSERT_MATCHES(ESRMNT);
ASSERT_MATCHES(ECOMM);
ASSERT_MATCHES(EPROTO);
ASSERT_MATCHES(EMULTIHOP);
ASSERT_MATCHES(EDOTDOT);
ASSERT_MATCHES(EBADMSG);
ASSERT_MATCHES(EOVERFLOW);
ASSERT_MATCHES(ENOTUNIQ);
ASSERT_MATCHES(EBADFD);
ASSERT_MATCHES(EREMCHG);
ASSERT_MATCHES(ELIBACC);
ASSERT_MATCHES(ELIBBAD);
ASSERT_MATCHES(ELIBSCN);
ASSERT_MATCHES(ELIBMAX);
ASSERT_MATCHES(ELIBEXEC);
ASSERT_MATCHES(EILSEQ);
ASSERT_MATCHES(ERESTART);
ASSERT_MATCHES(ESTRPIPE);
ASSERT_MATCHES(EUSERS);
ASSERT_MATCHES(ENOTSOCK);
ASSERT_MATCHES(EDESTADDRREQ);
ASSERT_MATCHES(EMSGSIZE);
ASSERT_MATCHES(EPROTOTYPE);
ASSERT_MATCHES(ENOPROTOOPT);
ASSERT_MATCHES(EPROTONOSUPPORT);
ASSERT_MATCHES(ESOCKTNOSUPPORT);
ASSERT_MATCHES(EOPNOTSUPP);
ASSERT_MATCHES_ALIASED(ENOTSUP);
ASSERT_MATCHES(EPFNOSUPPORT);
ASSERT_MATCHES(EAFNOSUPPORT);
ASSERT_MATCHES(EADDRINUSE);
ASSERT_MATCHES(EADDRNOTAVAIL);
ASSERT_MATCHES(ENETDOWN);
ASSERT_MATCHES(ENETUNREACH);
ASSERT_MATCHES(ENETRESET);
ASSERT_MATCHES(ECONNABORTED);
ASSERT_MATCHES(ECONNRESET);
ASSERT_MATCHES(ENOBUFS);
ASSERT_MATCHES(EISCONN);
ASSERT_MATCHES(ENOTCONN);
ASSERT_MATCHES(ESHUTDOWN);
ASSERT_MATCHES(ETOOMANYREFS);
ASSERT_MATCHES(ETIMEDOUT);
ASSERT_MATCHES(ECONNREFUSED);
ASSERT_MATCHES(EHOSTDOWN);
ASSERT_MATCHES(EHOSTUNREACH);
ASSERT_MATCHES(EALREADY);
ASSERT_MATCHES(EINPROGRESS);
ASSERT_MATCHES(ESTALE);
ASSERT_MATCHES(EUCLEAN);
ASSERT_MATCHES(ENOTNAM);
ASSERT_MATCHES(ENAVAIL);
ASSERT_MATCHES(EISNAM);
ASSERT_MATCHES(EREMOTEIO);
ASSERT_MATCHES(EDQUOT);
ASSERT_MATCHES(ENOMEDIUM);
ASSERT_MATCHES(EMEDIUMTYPE);
ASSERT_MATCHES(ECANCELED);
ASSERT_MATCHES(ENOKEY);
ASSERT_MATCHES(EKEYEXPIRED);
ASSERT_MATCHES(EKEYREVOKED);
ASSERT_MATCHES(EKEYREJECTED);
ASSERT_MATCHES(EOWNERDEAD);
ASSERT_MATCHES(ENOTRECOVERABLE);
ASSERT_MATCHES(ERFKILL);
ASSERT_MATCHES(EHWPOISON);