diff --git a/include/tradstdc.h b/include/tradstdc.h index 881787235..12a0d4afe 100644 --- a/include/tradstdc.h +++ b/include/tradstdc.h @@ -1,4 +1,4 @@ -/* NetHack 3.6 tradstdc.h $NHDT-Date: 1552007504 2019/03/08 01:11:44 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.35 $ */ +/* NetHack 3.6 tradstdc.h $NHDT-Date: 1555361295 2019/04/15 20:48:15 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.36 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /*-Copyright (c) Robert Patrick Rankin, 2006. */ /* NetHack may be freely redistributed. See license for details. */ @@ -320,6 +320,22 @@ typedef genericptr genericptr_t; /* (void *) or (char *) */ #endif #endif +/* this applies to both VMS and Digital Unix/HP Tru64 */ +#ifdef WIDENED_PROTOTYPES +/* ANSI C uses "value preserving rules", where 'unsigned char' and + 'unsigned short' promote to 'int' if signed int is big enough to hold + all possible values, rather than traditional "sign preserving rules" + where 'unsigned char' and 'unsigned short' promote to 'unsigned int'. + However, the ANSI C rules aren't binding on non-ANSI compilers. + When DEC C (aka Compaq C, then HP C) is in non-standard 'common' mode + it supports prototypes that expect widened types, but it uses the old + sign preserving rules for how to widen narrow unsigned types. (In its + default 'relaxed' mode, __STDC__ is 1 and uchar widens to 'int'.) */ +#if defined(__DECC) && (!defined(__STDC__) || !__STDC__) +#define UCHAR_P unsigned int +#endif +#endif + /* These are used for arguments within FDECL/VDECL prototype declarations. */ #ifdef UNWIDENED_PROTOTYPES diff --git a/include/unixconf.h b/include/unixconf.h index b7c5cabe0..c126d6839 100644 --- a/include/unixconf.h +++ b/include/unixconf.h @@ -1,4 +1,4 @@ -/* NetHack 3.6 unixconf.h $NHDT-Date: 1552074505 2019/03/08 19:48:25 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.41 $ */ +/* NetHack 3.6 unixconf.h $NHDT-Date: 1555361298 2019/04/15 20:48:18 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.42 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /*-Copyright (c) Pasi Kallinen, 2018. */ /* NetHack may be freely redistributed. See license for details. */ @@ -271,11 +271,6 @@ #endif #endif -/* Digital Unix/HP Tru64 -- see vmsconf.h for explanation */ -#if defined(__DECC) && (!defined(__STDC__) || !__STDC__) -#define UCHAR_P unsigned int -#endif - /* * BSD/ULTRIX systems are normally the only ones that can suspend processes. * Suspending NetHack processes cleanly should be easy to add to other systems diff --git a/include/vmsconf.h b/include/vmsconf.h index bebe6b468..a815e704a 100644 --- a/include/vmsconf.h +++ b/include/vmsconf.h @@ -1,4 +1,4 @@ -/* NetHack 3.6 vmsconf.h $NHDT-Date: 1552074506 2019/03/08 19:48:26 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.29 $ */ +/* NetHack 3.6 vmsconf.h $NHDT-Date: 1555361299 2019/04/15 20:48:19 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.30 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /*-Copyright (c) Robert Patrick Rankin, 2011. */ /* NetHack may be freely redistributed. See license for details. */ @@ -192,22 +192,6 @@ PANICTRACE_GDB=2 #at conclusion of panic, show a call traceback and then #endif #endif -/* tradstdc.h has't set this up yet, but config1.h might have */ -#ifndef UNWIDENED_PROTOTYPES -/* ANSI C uses "value preserving rules", where 'unsigned char' and - 'unsigned short' promote to 'int' if signed int is big enough to hold - all possible values, rather than traditional "sign preserving rules" - where 'unsigned char' and 'unsigned short' promote to 'unsigned int'. - However, the ANSI C rules aren't binding on non-ANSI compilers. - When DEC C (aka Compaq C, then HP C) is in non-standard 'common' mode - it supports prototypes that expect widened types, but it uses the old - sign preserving rules for how to widen narrow unsigned types. (In its - default 'relaxed' mode, __STDC__ is 1 and uchar widens to 'int'.) */ -#if defined(__DECC) && (!defined(__STDC__) || !__STDC__) -#define UCHAR_P unsigned int -#endif -#endif - #ifdef __DECC #define STRICT_REF_DEF /* used in lev_main.c */ #endif @@ -262,7 +246,7 @@ typedef __mode_t mode_t; #if defined(__DECC_VER) && (__DECC_VER >= 50000000) /* for cc/Standard=ANSI89, suppress notification that '$' in identifiers is an extension; sys/vms/*.c needs it regardless of strict ANSI mode */ - #pragma message disable DOLLARID +# pragma message disable DOLLARID #endif #include "system.h"