projects
/
u
/
mdw
/
catacomb
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
7383bc1
)
Make later versions of GCC shut up about @long long@.
author
mdw
<mdw>
Sun, 8 Oct 2000 12:05:24 +0000
(12:05 +0000)
committer
mdw
<mdw>
Sun, 8 Oct 2000 12:05:24 +0000
(12:05 +0000)
mptypes.c
patch
|
blob
|
blame
|
history
diff --git
a/mptypes.c
b/mptypes.c
index
dcdf839
..
f10ed7e
100644
(file)
--- a/
mptypes.c
+++ b/
mptypes.c
@@
-1,6
+1,6
@@
/* -*-c-*-
*
/* -*-c-*-
*
- * $Id: mptypes.c,v 1.
3 1999/12/10 23:29:48
mdw Exp $
+ * $Id: mptypes.c,v 1.
4 2000/10/08 12:05:24
mdw Exp $
*
* Generate `mptypes.h' header file for current architecture
*
*
* Generate `mptypes.h' header file for current architecture
*
@@
-30,6
+30,9
@@
/*----- Revision history --------------------------------------------------*
*
* $Log: mptypes.c,v $
/*----- Revision history --------------------------------------------------*
*
* $Log: mptypes.c,v $
+ * Revision 1.4 2000/10/08 12:05:24 mdw
+ * Make later versions of GCC shut up about @long long@.
+ *
* Revision 1.3 1999/12/10 23:29:48 mdw
* Change header file guard names.
*
* Revision 1.3 1999/12/10 23:29:48 mdw
* Change header file guard names.
*
@@
-55,6
+58,12
@@
* WG14 in their infinite wisdom decided not to use the GCC constant name.
*/
* WG14 in their infinite wisdom decided not to use the GCC constant name.
*/
+#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 91)
+# define EXT __extension__
+#else
+# define EXT
+#endif
+
#if defined(ULONG_LONG_MAX) && !defined(ULLONG_MAX)
# define ULLONG_MAX ULONG_LONG_MAX
#endif
#if defined(ULONG_LONG_MAX) && !defined(ULLONG_MAX)
# define ULLONG_MAX ULONG_LONG_MAX
#endif
@@
-65,7
+74,7
@@
typedef uintmax_t umax;
# define P_UMAX PRIuMAX
#elif defined(ULLONG_MAX)
typedef uintmax_t umax;
# define P_UMAX PRIuMAX
#elif defined(ULLONG_MAX)
- typedef unsigned long long umax;
+
__extension__
typedef unsigned long long umax;
# define P_UMAX "%llu"
#else
typedef unsigned long umax;
# define P_UMAX "%llu"
#else
typedef unsigned long umax;
@@
-78,7
+87,8
@@
*/
enum {
*/
enum {
- f_stdint
+ f_stdint = 1u,
+ f_ext = 2u
};
struct itype {
};
struct itype {
@@
-88,14
+98,14
@@
struct itype {
unsigned flags;
unsigned bits;
} tytab[] = {
unsigned flags;
unsigned bits;
} tytab[] = {
- { "unsigned int",
"u", UINT_MAX,
0 },
- { "unsigned short",
"u", USHRT_MAX,
0 },
- { "unsigned long",
"ul", ULONG_MAX,
0 },
+ { "unsigned int",
"u", UINT_MAX,
0 },
+ { "unsigned short",
"u", USHRT_MAX,
0 },
+ { "unsigned long",
"ul", ULONG_MAX,
0 },
#ifdef ULLONG_MAX
#ifdef ULLONG_MAX
- { "unsigned long long",
"ull", ULLONG_MAX, 0
},
+ { "unsigned long long",
"ull", EXT ULLONG_MAX, f_ext
},
#endif
#ifdef UINTMAX_MAX
#endif
#ifdef UINTMAX_MAX
- { "uintmax_t",
"u", UINTMAX_MAX,
f_stdint },
+ { "uintmax_t",
"u", UINTMAX_MAX,
f_stdint },
#endif
{ 0, 0 },
};
#endif
{ 0, 0 },
};
@@
-108,6
+118,7
@@
int main(int argc, char *argv[])
{
itype *i;
itype *largest, *mpw, *mpd;
{
itype *i;
itype *largest, *mpw, *mpd;
+ const static char *extstr = "CATACOMB_MPTYPES_EXTENSION ";
/* --- Find the bitcounts --- */
/* --- Find the bitcounts --- */
@@
-167,20
+178,34
@@
int main(int argc, char *argv[])
#endif\n\
");
}
#endif\n\
");
}
+ if ((mpd->flags | mpw->flags) & f_ext) {
+ printf("\
+#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 91)\n\
+# define %s __extension__\n\
+#else\n\
+# define %s\n\
+#endif\n\
+", extstr, extstr);
+ }
printf("\
printf("\
-typedef %s mpw;\n\
+
%s
typedef %s mpw;\n\
#define MPW_BITS %u\n\
#define MPW_BITS %u\n\
-#define MPW_MAX " P_UMAX "%s\n\
+#define MPW_MAX
%s
" P_UMAX "%s\n\
\n\
\n\
-typedef %s mpd;\n\
+
%s
typedef %s mpd;\n\
#define MPD_BITS %u\n\
#define MPD_BITS %u\n\
-#define MPD_MAX " P_UMAX "%s\n\
+#define MPD_MAX
%s
" P_UMAX "%s\n\
\n\
#endif\n\
",
\n\
#endif\n\
",
- mpw->name, mpw->bits, mpw->max, mpw->suff,
- mpd->name, mpd->bits, mpd->max, mpd->suff);
+ mpw->flags & f_ext ? extstr : "", mpw->name,
+ mpw->bits,
+ mpw->flags & f_ext ? extstr : "", mpw->max, mpw->suff,
+ mpd->flags & f_ext ? extstr : "", mpd->name,
+ mpd->bits,
+ mpd->flags & f_ext ? extstr : "", mpd->max, mpd->suff);
return (0);
}
return (0);
}
+
/*----- That's all, folks -------------------------------------------------*/
/*----- That's all, folks -------------------------------------------------*/