diff options
| author | Paul Eggert | 2016-02-09 14:23:53 -0800 |
|---|---|---|
| committer | Paul Eggert | 2016-02-09 14:23:53 -0800 |
| commit | 05595c2e59983db469e620c4f34b2eef5123391b (patch) | |
| tree | 9c72fdb703ebbacb66a9ca08c7a3d4c5bef01049 /src/lisp.h | |
| parent | 8fa67e959bcc835c359981aae01f0dad3213451a (diff) | |
| parent | 821213572075b3f5a97676f48aeb6733bf437277 (diff) | |
| download | emacs-05595c2e59983db469e620c4f34b2eef5123391b.tar.gz emacs-05595c2e59983db469e620c4f34b2eef5123391b.zip | |
-
Diffstat (limited to 'src/lisp.h')
| -rw-r--r-- | src/lisp.h | 20 |
1 files changed, 2 insertions, 18 deletions
diff --git a/src/lisp.h b/src/lisp.h index 21301702620..f71394e8784 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -67,20 +67,6 @@ DEFINE_GDB_SYMBOL_BEGIN (int, GCTYPEBITS) | |||
| 67 | #define GCTYPEBITS 3 | 67 | #define GCTYPEBITS 3 |
| 68 | DEFINE_GDB_SYMBOL_END (GCTYPEBITS) | 68 | DEFINE_GDB_SYMBOL_END (GCTYPEBITS) |
| 69 | 69 | ||
| 70 | /* The number of bits needed in an EMACS_INT over and above the number | ||
| 71 | of bits in a pointer. This is 0 on systems where: | ||
| 72 | 1. We can specify multiple-of-8 alignment on static variables. | ||
| 73 | 2. We know malloc returns a multiple of 8. */ | ||
| 74 | #if (defined alignas \ | ||
| 75 | && (defined GNU_MALLOC || defined DOUG_LEA_MALLOC || defined __GLIBC__ \ | ||
| 76 | || defined CYGWIN || defined __MINGW32__ \ | ||
| 77 | || defined DARWIN_OS || defined __FreeBSD__ \ | ||
| 78 | || defined __sun)) | ||
| 79 | # define NONPOINTER_BITS 0 | ||
| 80 | #else | ||
| 81 | # define NONPOINTER_BITS GCTYPEBITS | ||
| 82 | #endif | ||
| 83 | |||
| 84 | /* EMACS_INT - signed integer wide enough to hold an Emacs value | 70 | /* EMACS_INT - signed integer wide enough to hold an Emacs value |
| 85 | EMACS_INT_MAX - maximum value of EMACS_INT; can be used in #if | 71 | EMACS_INT_MAX - maximum value of EMACS_INT; can be used in #if |
| 86 | pI - printf length modifier for EMACS_INT | 72 | pI - printf length modifier for EMACS_INT |
| @@ -88,18 +74,16 @@ DEFINE_GDB_SYMBOL_END (GCTYPEBITS) | |||
| 88 | #ifndef EMACS_INT_MAX | 74 | #ifndef EMACS_INT_MAX |
| 89 | # if INTPTR_MAX <= 0 | 75 | # if INTPTR_MAX <= 0 |
| 90 | # error "INTPTR_MAX misconfigured" | 76 | # error "INTPTR_MAX misconfigured" |
| 91 | # elif INTPTR_MAX <= INT_MAX >> NONPOINTER_BITS && !defined WIDE_EMACS_INT | 77 | # elif INTPTR_MAX <= INT_MAX && !defined WIDE_EMACS_INT |
| 92 | typedef int EMACS_INT; | 78 | typedef int EMACS_INT; |
| 93 | typedef unsigned int EMACS_UINT; | 79 | typedef unsigned int EMACS_UINT; |
| 94 | # define EMACS_INT_MAX INT_MAX | 80 | # define EMACS_INT_MAX INT_MAX |
| 95 | # define pI "" | 81 | # define pI "" |
| 96 | # elif INTPTR_MAX <= LONG_MAX >> NONPOINTER_BITS && !defined WIDE_EMACS_INT | 82 | # elif INTPTR_MAX <= LONG_MAX && !defined WIDE_EMACS_INT |
| 97 | typedef long int EMACS_INT; | 83 | typedef long int EMACS_INT; |
| 98 | typedef unsigned long EMACS_UINT; | 84 | typedef unsigned long EMACS_UINT; |
| 99 | # define EMACS_INT_MAX LONG_MAX | 85 | # define EMACS_INT_MAX LONG_MAX |
| 100 | # define pI "l" | 86 | # define pI "l" |
| 101 | /* Check versus LLONG_MAX, not LLONG_MAX >> NONPOINTER_BITS. | ||
| 102 | In theory this is not safe, but in practice it seems to be OK. */ | ||
| 103 | # elif INTPTR_MAX <= LLONG_MAX | 87 | # elif INTPTR_MAX <= LLONG_MAX |
| 104 | typedef long long int EMACS_INT; | 88 | typedef long long int EMACS_INT; |
| 105 | typedef unsigned long long int EMACS_UINT; | 89 | typedef unsigned long long int EMACS_UINT; |