UINT64_C() work continues.
Jarkko Hietaniemi [Wed, 15 Nov 2000 22:51:56 +0000 (22:51 +0000)]
p4raw-id: //depot/perl@7700

handy.h
perl.h
utf8.h

diff --git a/handy.h b/handy.h
index ba3a812..b3912a4 100644 (file)
--- a/handy.h
+++ b/handy.h
@@ -114,6 +114,10 @@ Null SV pointer.
 
 */
 
+#ifdef I_INTTYPES /* e.g. Linux has int64_t without <inttypes.h> */
+#   include <inttypes.h>
+#endif
+
 typedef I8TYPE I8;
 typedef U8TYPE U8;
 typedef I16TYPE I16;
@@ -122,24 +126,25 @@ typedef I32TYPE I32;
 typedef U32TYPE U32;
 #ifdef PERL_CORE
 #   ifdef HAS_QUAD
-#       if QUADKIND == QUAD_IS_INT64_T
-#           include <sys/types.h>
-#           ifdef I_INTTYPES /* e.g. Linux has int64_t without <inttypes.h> */
-#               include <inttypes.h>
-#           endif
-#       endif
 typedef I64TYPE I64;
 typedef U64TYPE U64;
 #   endif
 #endif /* PERL_CORE */
 
-#ifndef UINT64_C /* usually from <inttypes.h> */
-#   ifdef HAS_LONG_LONG 
-#       define INT64_C(c)      CAT2(c,LL)
-#       define UINT64_C(c)     CAT2(c,ULL)
-#   else
-#       define INT64_C(c)      ((I64TYPE)(c))
-#       define UINT64_C(c)     ((U64TYPE)(c))
+#if defined(HAS_QUAD) && defined(USE_64_BIT_INT)
+#   ifndef UINT64_C /* usually from <inttypes.h> */
+#       if defined(HAS_LONG_LONG) && QUADKIND == QUAD_IS_LONG_LONG
+#           define INT64_C(c)  CAT2(c,LL)
+#           define UINT64_C(c) CAT2(c,ULL)
+#       else
+#           if LONGSIZE == 8 && QUADKIND == QUAD_IS_LONG
+#               define INT64_C(c)      CAT2(c,L)
+#               define UINT64_C(c)     CAT2(c,UL)
+#           else
+#               define INT64_C(c)      ((I64TYPE)(c))
+#               define UINT64_C(c)     ((U64TYPE)(c))
+#           endif
+#       endif
 #   endif
 #endif
 
diff --git a/perl.h b/perl.h
index 56b25f3..ea46276 100644 (file)
--- a/perl.h
+++ b/perl.h
@@ -1,4 +1,3 @@
-emacs -nw perl.h
 /*    perl.h
  *
  *    Copyright (c) 1987-2000, Larry Wall
diff --git a/utf8.h b/utf8.h
index 522f4a9..25ddc14 100644 (file)
--- a/utf8.h
+++ b/utf8.h
@@ -9,8 +9,6 @@
 
 START_EXTERN_C
 
-#include "handy.h"
-
 #ifdef DOINIT
 EXTCONST unsigned char PL_utf8skip[] = {
 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, /* ascii */