]> code.delx.au - gnu-emacs/blobdiff - nt/config.nt
Switch from NO_RETURN to C11's _Noreturn.
[gnu-emacs] / nt / config.nt
index 2e56633d4fd19b448fcc3f2d50aae852a53a2b0c..8c66d3d6ebd2d30a9ce4a148f76bdcad212dd234 100644 (file)
@@ -326,6 +326,9 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 /* Version number of package */
 #define VERSION "24.1.50"
 
+/* The type of system you are compiling for; sets `system-type'.  */
+#define SYSTEM_TYPE "windows-nt"
+
 /* Define to `__inline__' or `__inline' if that's what the C compiler
    calls it, or to nothing if 'inline' is not supported under any name.  */
 #ifdef __GNUC__
@@ -492,18 +495,23 @@ extern char *getenv ();
 #endif
 #include <stdlib.h>
 
-#ifndef NO_RETURN
-#if defined __GNUC__ && (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR >= 5))
-#define NO_RETURN      __attribute__ ((__noreturn__))
-#else
-#define NO_RETURN      /* nothing */
-#endif
+/* The _Noreturn keyword of C11.  */
+#if ! (defined _Noreturn \
+       || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__))
+# if (3 <= __GNUC__ || (__GNUC__ == 2 && 8 <= __GNUC_MINOR__) \
+      || 0x5110 <= __SUNPRO_C)
+#  define _Noreturn __attribute__ ((__noreturn__))
+# elif defined _MSC_VER && 1200 <= _MSC_VER
+#  define _Noreturn __declspec (noreturn)
+# else
+#  define _Noreturn
+# endif
 #endif
 
 /* Redefine abort.  */
 #ifdef HAVE_NTGUI
 #define abort  w32_abort
-void w32_abort (void) NO_RETURN;
+_Noreturn void w32_abort (void);
 #endif
 
 /* Prevent accidental use of features unavailable in