remove all remaining redundant __restrict/__inline/_Noreturn defs
diff --git a/include/arpa/inet.h b/include/arpa/inet.h
index 82e2ac1..9293840 100644
--- a/include/arpa/inet.h
+++ b/include/arpa/inet.h
@@ -5,12 +5,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
-
+#include <features.h>
 #include <netinet/in.h>
 #include <inttypes.h>
 
diff --git a/include/byteswap.h b/include/byteswap.h
index bf222d3..00b9df3 100644
--- a/include/byteswap.h
+++ b/include/byteswap.h
@@ -1,12 +1,9 @@
 #ifndef _BYTESWAP_H
 #define _BYTESWAP_H
 
+#include <features.h>
 #include <stdint.h>
 
-#if __STDC_VERSION__ >= 199901L || defined(__cplusplus)
-#define __inline inline
-#endif
-
 static __inline uint16_t __bswap_16(uint16_t __x)
 {
 	return __x<<8 | __x>>8;
diff --git a/include/iconv.h b/include/iconv.h
index cef06f6..ebe9bfd 100644
--- a/include/iconv.h
+++ b/include/iconv.h
@@ -5,11 +5,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
+#include <features.h>
 
 #define __NEED_size_t
 
diff --git a/include/inttypes.h b/include/inttypes.h
index 23acc5b..3f0339c 100644
--- a/include/inttypes.h
+++ b/include/inttypes.h
@@ -5,17 +5,12 @@
 extern "C" {
 #endif
 
+#include <features.h>
 #include <stdint.h>
 
 #define __NEED_wchar_t
 #include <bits/alltypes.h>
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
-
 typedef struct { intmax_t quot, rem; } imaxdiv_t;
 
 intmax_t imaxabs(intmax_t);
diff --git a/include/monetary.h b/include/monetary.h
index 11dabb2..a91fa56 100644
--- a/include/monetary.h
+++ b/include/monetary.h
@@ -5,11 +5,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
+#include <features.h>
 
 #define __NEED_ssize_t
 #define __NEED_size_t
diff --git a/include/mqueue.h b/include/mqueue.h
index bd35842..f5cbe79 100644
--- a/include/mqueue.h
+++ b/include/mqueue.h
@@ -4,11 +4,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
+#include <features.h>
 
 #define __NEED_size_t
 #define __NEED_ssize_t
diff --git a/include/pthread.h b/include/pthread.h
index bc0d9f1..74d8600 100644
--- a/include/pthread.h
+++ b/include/pthread.h
@@ -4,18 +4,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
-
-#if __STDC_VERSION__ >= 201112L
-#elif defined(__GNUC__)
-#define _Noreturn __attribute__((__noreturn__))
-#else
-#define _Noreturn
-#endif
+#include <features.h>
 
 #define __NEED_time_t
 #define __NEED_clockid_t
diff --git a/include/regex.h b/include/regex.h
index b7167b8..2eac1eb 100644
--- a/include/regex.h
+++ b/include/regex.h
@@ -5,11 +5,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
+#include <features.h>
 
 #define __NEED_size_t
 
diff --git a/include/semaphore.h b/include/semaphore.h
index 724957f..20d46f0 100644
--- a/include/semaphore.h
+++ b/include/semaphore.h
@@ -4,11 +4,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
+#include <features.h>
 
 #define __NEED_time_t
 #define __NEED_struct_timespec
diff --git a/include/spawn.h b/include/spawn.h
index c934d42..a28ae69 100644
--- a/include/spawn.h
+++ b/include/spawn.h
@@ -5,11 +5,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
+#include <features.h>
 
 #define __NEED_mode_t
 #define __NEED_pid_t
diff --git a/include/sys/select.h b/include/sys/select.h
index dd4176d..c5a2877 100644
--- a/include/sys/select.h
+++ b/include/sys/select.h
@@ -4,11 +4,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
+#include <features.h>
 
 #define __NEED_size_t
 #define __NEED_time_t
diff --git a/include/sys/socket.h b/include/sys/socket.h
index 7024d23..97d7887 100644
--- a/include/sys/socket.h
+++ b/include/sys/socket.h
@@ -4,11 +4,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
+#include <features.h>
 
 #define __NEED_socklen_t
 #define __NEED_sa_family_t
diff --git a/include/sys/syscall.h b/include/sys/syscall.h
index 154e5ab..62564d7 100644
--- a/include/sys/syscall.h
+++ b/include/sys/syscall.h
@@ -4,9 +4,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L || defined(__cplusplus)
-#define __inline inline
-#endif
+#include <features.h>
 
 long __syscall_ret(unsigned long);
 long __syscall(long, ...);
diff --git a/include/wordexp.h b/include/wordexp.h
index e7eb325..d12081e 100644
--- a/include/wordexp.h
+++ b/include/wordexp.h
@@ -5,11 +5,7 @@
 extern "C" {
 #endif
 
-#if __STDC_VERSION__ >= 199901L
-#define __restrict restrict
-#elif !defined(__GNUC__)
-#define __restrict
-#endif
+#include <features.h>
 
 #define __NEED_size_t