diff --git a/libc/bionic/strerror.cpp b/libc/bionic/strerror.cpp
index 0deb200..00f50b7 100644
--- a/libc/bionic/strerror.cpp
+++ b/libc/bionic/strerror.cpp
@@ -43,139 +43,141 @@
 
 #include "bionic/pthread_internal.h"
 
+#define ERRNO_STRING_MAP_ENTRY(errno, string) [errno] = string " (" #errno ")"
+
 static const char* __sys_error_strings[] = {
     [0] = "Success",
-    [EPERM] = "Operation not permitted",
-    [ENOENT] = "No such file or directory",
-    [ESRCH] = "No such process",
-    [EINTR] = "Interrupted system call",
-    [EIO] = "I/O error",
-    [ENXIO] = "No such device or address",
-    [E2BIG] = "Argument list too long",
-    [ENOEXEC] = "Exec format error",
-    [EBADF] = "Bad file descriptor",
-    [ECHILD] = "No child processes",
-    [EAGAIN] = "Try again",
-    [ENOMEM] = "Out of memory",
-    [EACCES] = "Permission denied",
-    [EFAULT] = "Bad address",
-    [ENOTBLK] = "Block device required",
-    [EBUSY] = "Device or resource busy",
-    [EEXIST] = "File exists",
-    [EXDEV] = "Cross-device link",
-    [ENODEV] = "No such device",
-    [ENOTDIR] = "Not a directory",
-    [EISDIR] = "Is a directory",
-    [EINVAL] = "Invalid argument",
-    [ENFILE] = "File table overflow",
-    [EMFILE] = "Too many open files",
-    [ENOTTY] = "Inappropriate ioctl for device",
-    [ETXTBSY] = "Text file busy",
-    [EFBIG] = "File too large",
-    [ENOSPC] = "No space left on device",
-    [ESPIPE] = "Illegal seek",
-    [EROFS] = "Read-only file system",
-    [EMLINK] = "Too many links",
-    [EPIPE] = "Broken pipe",
-    [EDOM] = "Math argument out of domain of func",
-    [ERANGE] = "Math result not representable",
-    [EDEADLK] = "Resource deadlock would occur",
-    [ENAMETOOLONG] = "File name too long",
-    [ENOLCK] = "No record locks available",
-    [ENOSYS] = "Function not implemented",
-    [ENOTEMPTY] = "Directory not empty",
-    [ELOOP] = "Too many symbolic links encountered",
-    [ENOMSG] = "No message of desired type",
-    [EIDRM] = "Identifier removed",
-    [ECHRNG] = "Channel number out of range",
-    [EL2NSYNC] = "Level 2 not synchronized",
-    [EL3HLT] = "Level 3 halted",
-    [EL3RST] = "Level 3 reset",
-    [ELNRNG] = "Link number out of range",
-    [EUNATCH] = "Protocol driver not attached",
-    [ENOCSI] = "No CSI structure available",
-    [EL2HLT] = "Level 2 halted",
-    [EBADE] = "Invalid exchange",
-    [EBADR] = "Invalid request descriptor",
-    [EXFULL] = "Exchange full",
-    [ENOANO] = "No anode",
-    [EBADRQC] = "Invalid request code",
-    [EBADSLT] = "Invalid slot",
-    [EBFONT] = "Bad font file format",
-    [ENOSTR] = "Device not a stream",
-    [ENODATA] = "No data available",
-    [ETIME] = "Timer expired",
-    [ENOSR] = "Out of streams resources",
-    [ENONET] = "Machine is not on the network",
-    [ENOPKG] = "Package not installed",
-    [EREMOTE] = "Object is remote",
-    [ENOLINK] = "Link has been severed",
-    [EADV] = "Advertise error",
-    [ESRMNT] = "Srmount error",
-    [ECOMM] = "Communication error on send",
-    [EPROTO] = "Protocol error",
-    [EMULTIHOP] = "Multihop attempted",
-    [EDOTDOT] = "RFS specific error",
-    [EBADMSG] = "Not a data message",
-    [EOVERFLOW] = "Value too large for defined data type",
-    [ENOTUNIQ] = "Name not unique on network",
-    [EBADFD] = "File descriptor in bad state",
-    [EREMCHG] = "Remote address changed",
-    [ELIBACC] = "Can not access a needed shared library",
-    [ELIBBAD] = "Accessing a corrupted shared library",
-    [ELIBSCN] = ".lib section in a.out corrupted",
-    [ELIBMAX] = "Attempting to link in too many shared libraries",
-    [ELIBEXEC] = "Cannot exec a shared library directly",
-    [EILSEQ] = "Illegal byte sequence",
-    [ERESTART] = "Interrupted system call should be restarted",
-    [ESTRPIPE] = "Streams pipe error",
-    [EUSERS] = "Too many users",
-    [ENOTSOCK] = "Socket operation on non-socket",
-    [EDESTADDRREQ] = "Destination address required",
-    [EMSGSIZE] = "Message too long",
-    [EPROTOTYPE] = "Protocol wrong type for socket",
-    [ENOPROTOOPT] = "Protocol not available",
-    [EPROTONOSUPPORT] = "Protocol not supported",
-    [ESOCKTNOSUPPORT] = "Socket type not supported",
-    [EOPNOTSUPP] = "Operation not supported on transport endpoint",
-    [EPFNOSUPPORT] = "Protocol family not supported",
-    [EAFNOSUPPORT] = "Address family not supported by protocol",
-    [EADDRINUSE] = "Address already in use",
-    [EADDRNOTAVAIL] = "Cannot assign requested address",
-    [ENETDOWN] = "Network is down",
-    [ENETUNREACH] = "Network is unreachable",
-    [ENETRESET] = "Network dropped connection because of reset",
-    [ECONNABORTED] = "Software caused connection abort",
-    [ECONNRESET] = "Connection reset by peer",
-    [ENOBUFS] = "No buffer space available",
-    [EISCONN] = "Transport endpoint is already connected",
-    [ENOTCONN] = "Transport endpoint is not connected",
-    [ESHUTDOWN] = "Cannot send after transport endpoint shutdown",
-    [ETOOMANYREFS] = "Too many references: cannot splice",
-    [ETIMEDOUT] = "Connection timed out",
-    [ECONNREFUSED] = "Connection refused",
-    [EHOSTDOWN] = "Host is down",
-    [EHOSTUNREACH] = "No route to host",
-    [EALREADY] = "Operation already in progress",
-    [EINPROGRESS] = "Operation now in progress",
-    [ESTALE] = "Stale NFS file handle",
-    [EUCLEAN] = "Structure needs cleaning",
-    [ENOTNAM] = "Not a XENIX named type file",
-    [ENAVAIL] = "No XENIX semaphores available",
-    [EISNAM] = "Is a named type file",
-    [EREMOTEIO] = "Remote I/O error",
-    [EDQUOT] = "Quota exceeded",
-    [ENOMEDIUM] = "No medium found",
-    [EMEDIUMTYPE] = "Wrong medium type",
-    [ECANCELED] = "Operation Canceled",
-    [ENOKEY] = "Required key not available",
-    [EKEYEXPIRED] = "Key has expired",
-    [EKEYREVOKED] = "Key has been revoked",
-    [EKEYREJECTED] = "Key was rejected by service",
-    [EOWNERDEAD] = "Owner died",
-    [ENOTRECOVERABLE] = "State not recoverable",
-    [ERFKILL] = "Operation not possible due to RF-kill",
-    [EHWPOISON] = "Memory page has hardware error",
+    ERRNO_STRING_MAP_ENTRY(EPERM, "Operation not permitted"),
+    ERRNO_STRING_MAP_ENTRY(ENOENT, "No such file or directory"),
+    ERRNO_STRING_MAP_ENTRY(ESRCH, "No such process"),
+    ERRNO_STRING_MAP_ENTRY(EINTR, "Interrupted system call"),
+    ERRNO_STRING_MAP_ENTRY(EIO, "I/O error"),
+    ERRNO_STRING_MAP_ENTRY(ENXIO, "No such device or address"),
+    ERRNO_STRING_MAP_ENTRY(E2BIG, "Argument list too long"),
+    ERRNO_STRING_MAP_ENTRY(ENOEXEC, "Exec format error"),
+    ERRNO_STRING_MAP_ENTRY(EBADF, "Bad file descriptor"),
+    ERRNO_STRING_MAP_ENTRY(ECHILD, "No child processes"),
+    ERRNO_STRING_MAP_ENTRY(EAGAIN, "Try again"),
+    ERRNO_STRING_MAP_ENTRY(ENOMEM, "Out of memory"),
+    ERRNO_STRING_MAP_ENTRY(EACCES, "Permission denied"),
+    ERRNO_STRING_MAP_ENTRY(EFAULT, "Bad address"),
+    ERRNO_STRING_MAP_ENTRY(ENOTBLK, "Block device required"),
+    ERRNO_STRING_MAP_ENTRY(EBUSY, "Device or resource busy"),
+    ERRNO_STRING_MAP_ENTRY(EEXIST, "File exists"),
+    ERRNO_STRING_MAP_ENTRY(EXDEV, "Cross-device link"),
+    ERRNO_STRING_MAP_ENTRY(ENODEV, "No such device"),
+    ERRNO_STRING_MAP_ENTRY(ENOTDIR, "Not a directory"),
+    ERRNO_STRING_MAP_ENTRY(EISDIR, "Is a directory"),
+    ERRNO_STRING_MAP_ENTRY(EINVAL, "Invalid argument"),
+    ERRNO_STRING_MAP_ENTRY(ENFILE, "File table overflow"),
+    ERRNO_STRING_MAP_ENTRY(EMFILE, "Too many open files"),
+    ERRNO_STRING_MAP_ENTRY(ENOTTY, "Inappropriate ioctl for device"),
+    ERRNO_STRING_MAP_ENTRY(ETXTBSY, "Text file busy"),
+    ERRNO_STRING_MAP_ENTRY(EFBIG, "File too large"),
+    ERRNO_STRING_MAP_ENTRY(ENOSPC, "No space left on device"),
+    ERRNO_STRING_MAP_ENTRY(ESPIPE, "Illegal seek"),
+    ERRNO_STRING_MAP_ENTRY(EROFS, "Read-only file system"),
+    ERRNO_STRING_MAP_ENTRY(EMLINK, "Too many links"),
+    ERRNO_STRING_MAP_ENTRY(EPIPE, "Broken pipe"),
+    ERRNO_STRING_MAP_ENTRY(EDOM, "Math argument out of domain of func"),
+    ERRNO_STRING_MAP_ENTRY(ERANGE, "Math result not representable"),
+    ERRNO_STRING_MAP_ENTRY(EDEADLK, "Resource deadlock would occur"),
+    ERRNO_STRING_MAP_ENTRY(ENAMETOOLONG, "File name too long"),
+    ERRNO_STRING_MAP_ENTRY(ENOLCK, "No record locks available"),
+    ERRNO_STRING_MAP_ENTRY(ENOSYS, "Function not implemented"),
+    ERRNO_STRING_MAP_ENTRY(ENOTEMPTY, "Directory not empty"),
+    ERRNO_STRING_MAP_ENTRY(ELOOP, "Too many symbolic links encountered"),
+    ERRNO_STRING_MAP_ENTRY(ENOMSG, "No message of desired type"),
+    ERRNO_STRING_MAP_ENTRY(EIDRM, "Identifier removed"),
+    ERRNO_STRING_MAP_ENTRY(ECHRNG, "Channel number out of range"),
+    ERRNO_STRING_MAP_ENTRY(EL2NSYNC, "Level 2 not synchronized"),
+    ERRNO_STRING_MAP_ENTRY(EL3HLT, "Level 3 halted"),
+    ERRNO_STRING_MAP_ENTRY(EL3RST, "Level 3 reset"),
+    ERRNO_STRING_MAP_ENTRY(ELNRNG, "Link number out of range"),
+    ERRNO_STRING_MAP_ENTRY(EUNATCH, "Protocol driver not attached"),
+    ERRNO_STRING_MAP_ENTRY(ENOCSI, "No CSI structure available"),
+    ERRNO_STRING_MAP_ENTRY(EL2HLT, "Level 2 halted"),
+    ERRNO_STRING_MAP_ENTRY(EBADE, "Invalid exchange"),
+    ERRNO_STRING_MAP_ENTRY(EBADR, "Invalid request descriptor"),
+    ERRNO_STRING_MAP_ENTRY(EXFULL, "Exchange full"),
+    ERRNO_STRING_MAP_ENTRY(ENOANO, "No anode"),
+    ERRNO_STRING_MAP_ENTRY(EBADRQC, "Invalid request code"),
+    ERRNO_STRING_MAP_ENTRY(EBADSLT, "Invalid slot"),
+    ERRNO_STRING_MAP_ENTRY(EBFONT, "Bad font file format"),
+    ERRNO_STRING_MAP_ENTRY(ENOSTR, "Device not a stream"),
+    ERRNO_STRING_MAP_ENTRY(ENODATA, "No data available"),
+    ERRNO_STRING_MAP_ENTRY(ETIME, "Timer expired"),
+    ERRNO_STRING_MAP_ENTRY(ENOSR, "Out of streams resources"),
+    ERRNO_STRING_MAP_ENTRY(ENONET, "Machine is not on the network"),
+    ERRNO_STRING_MAP_ENTRY(ENOPKG, "Package not installed"),
+    ERRNO_STRING_MAP_ENTRY(EREMOTE, "Object is remote"),
+    ERRNO_STRING_MAP_ENTRY(ENOLINK, "Link has been severed"),
+    ERRNO_STRING_MAP_ENTRY(EADV, "Advertise error"),
+    ERRNO_STRING_MAP_ENTRY(ESRMNT, "Srmount error"),
+    ERRNO_STRING_MAP_ENTRY(ECOMM, "Communication error on send"),
+    ERRNO_STRING_MAP_ENTRY(EPROTO, "Protocol error"),
+    ERRNO_STRING_MAP_ENTRY(EMULTIHOP, "Multihop attempted"),
+    ERRNO_STRING_MAP_ENTRY(EDOTDOT, "RFS specific error"),
+    ERRNO_STRING_MAP_ENTRY(EBADMSG, "Not a data message"),
+    ERRNO_STRING_MAP_ENTRY(EOVERFLOW, "Value too large for defined data type"),
+    ERRNO_STRING_MAP_ENTRY(ENOTUNIQ, "Name not unique on network"),
+    ERRNO_STRING_MAP_ENTRY(EBADFD, "File descriptor in bad state"),
+    ERRNO_STRING_MAP_ENTRY(EREMCHG, "Remote address changed"),
+    ERRNO_STRING_MAP_ENTRY(ELIBACC, "Can not access a needed shared library"),
+    ERRNO_STRING_MAP_ENTRY(ELIBBAD, "Accessing a corrupted shared library"),
+    ERRNO_STRING_MAP_ENTRY(ELIBSCN, ".lib section in a.out corrupted"),
+    ERRNO_STRING_MAP_ENTRY(ELIBMAX, "Attempting to link in too many shared libraries"),
+    ERRNO_STRING_MAP_ENTRY(ELIBEXEC, "Cannot exec a shared library directly"),
+    ERRNO_STRING_MAP_ENTRY(EILSEQ, "Illegal byte sequence"),
+    ERRNO_STRING_MAP_ENTRY(ERESTART, "Interrupted system call should be restarted"),
+    ERRNO_STRING_MAP_ENTRY(ESTRPIPE, "Streams pipe error"),
+    ERRNO_STRING_MAP_ENTRY(EUSERS, "Too many users"),
+    ERRNO_STRING_MAP_ENTRY(ENOTSOCK, "Socket operation on non-socket"),
+    ERRNO_STRING_MAP_ENTRY(EDESTADDRREQ, "Destination address required"),
+    ERRNO_STRING_MAP_ENTRY(EMSGSIZE, "Message too long"),
+    ERRNO_STRING_MAP_ENTRY(EPROTOTYPE, "Protocol wrong type for socket"),
+    ERRNO_STRING_MAP_ENTRY(ENOPROTOOPT, "Protocol not available"),
+    ERRNO_STRING_MAP_ENTRY(EPROTONOSUPPORT, "Protocol not supported"),
+    ERRNO_STRING_MAP_ENTRY(ESOCKTNOSUPPORT, "Socket type not supported"),
+    ERRNO_STRING_MAP_ENTRY(EOPNOTSUPP, "Operation not supported on transport endpoint"),
+    ERRNO_STRING_MAP_ENTRY(EPFNOSUPPORT, "Protocol family not supported"),
+    ERRNO_STRING_MAP_ENTRY(EAFNOSUPPORT, "Address family not supported by protocol"),
+    ERRNO_STRING_MAP_ENTRY(EADDRINUSE, "Address already in use"),
+    ERRNO_STRING_MAP_ENTRY(EADDRNOTAVAIL, "Cannot assign requested address"),
+    ERRNO_STRING_MAP_ENTRY(ENETDOWN, "Network is down"),
+    ERRNO_STRING_MAP_ENTRY(ENETUNREACH, "Network is unreachable"),
+    ERRNO_STRING_MAP_ENTRY(ENETRESET, "Network dropped connection because of reset"),
+    ERRNO_STRING_MAP_ENTRY(ECONNABORTED, "Software caused connection abort"),
+    ERRNO_STRING_MAP_ENTRY(ECONNRESET, "Connection reset by peer"),
+    ERRNO_STRING_MAP_ENTRY(ENOBUFS, "No buffer space available"),
+    ERRNO_STRING_MAP_ENTRY(EISCONN, "Transport endpoint is already connected"),
+    ERRNO_STRING_MAP_ENTRY(ENOTCONN, "Transport endpoint is not connected"),
+    ERRNO_STRING_MAP_ENTRY(ESHUTDOWN, "Cannot send after transport endpoint shutdown"),
+    ERRNO_STRING_MAP_ENTRY(ETOOMANYREFS, "Too many references: cannot splice"),
+    ERRNO_STRING_MAP_ENTRY(ETIMEDOUT, "Connection timed out"),
+    ERRNO_STRING_MAP_ENTRY(ECONNREFUSED, "Connection refused"),
+    ERRNO_STRING_MAP_ENTRY(EHOSTDOWN, "Host is down"),
+    ERRNO_STRING_MAP_ENTRY(EHOSTUNREACH, "No route to host"),
+    ERRNO_STRING_MAP_ENTRY(EALREADY, "Operation already in progress"),
+    ERRNO_STRING_MAP_ENTRY(EINPROGRESS, "Operation now in progress"),
+    ERRNO_STRING_MAP_ENTRY(ESTALE, "Stale NFS file handle"),
+    ERRNO_STRING_MAP_ENTRY(EUCLEAN, "Structure needs cleaning"),
+    ERRNO_STRING_MAP_ENTRY(ENOTNAM, "Not a XENIX named type file"),
+    ERRNO_STRING_MAP_ENTRY(ENAVAIL, "No XENIX semaphores available"),
+    ERRNO_STRING_MAP_ENTRY(EISNAM, "Is a named type file"),
+    ERRNO_STRING_MAP_ENTRY(EREMOTEIO, "Remote I/O error"),
+    ERRNO_STRING_MAP_ENTRY(EDQUOT, "Quota exceeded"),
+    ERRNO_STRING_MAP_ENTRY(ENOMEDIUM, "No medium found"),
+    ERRNO_STRING_MAP_ENTRY(EMEDIUMTYPE, "Wrong medium type"),
+    ERRNO_STRING_MAP_ENTRY(ECANCELED, "Operation Canceled"),
+    ERRNO_STRING_MAP_ENTRY(ENOKEY, "Required key not available"),
+    ERRNO_STRING_MAP_ENTRY(EKEYEXPIRED, "Key has expired"),
+    ERRNO_STRING_MAP_ENTRY(EKEYREVOKED, "Key has been revoked"),
+    ERRNO_STRING_MAP_ENTRY(EKEYREJECTED, "Key was rejected by service"),
+    ERRNO_STRING_MAP_ENTRY(EOWNERDEAD, "Owner died"),
+    ERRNO_STRING_MAP_ENTRY(ENOTRECOVERABLE, "State not recoverable"),
+    ERRNO_STRING_MAP_ENTRY(ERFKILL, "Operation not possible due to RF-kill"),
+    ERRNO_STRING_MAP_ENTRY(EHWPOISON, "Memory page has hardware error"),
 };
 
 static inline const char* __strerror_lookup(int error_number) {
