diff options
author | drh <drh@noemail.net> | 2019-07-17 19:57:55 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2019-07-17 19:57:55 +0000 |
commit | 4509ffa3621d1e44a3d4ba5fbf90dd9a629a9053 (patch) | |
tree | 4f1d5e8187e79824bfc1ed81ed7909b1076f1797 /src/sqliteInt.h | |
parent | 996f5ccb3328b12e8b8c65b0f536e1f717a60067 (diff) | |
download | sqlite-4509ffa3621d1e44a3d4ba5fbf90dd9a629a9053.tar.gz sqlite-4509ffa3621d1e44a3d4ba5fbf90dd9a629a9053.zip |
Always use the stdlib.h intptr_t type for pointer-integer conversions, when
it is available.
FossilOrigin-Name: c0d932449db3deed42a99bd948aab61e56b2d8441d7de5243688695ff04e8177
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r-- | src/sqliteInt.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h index c123dfffb..837e056cf 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -212,15 +212,15 @@ ** So we have to define the macros in different ways depending on the ** compiler. */ -#if defined(__PTRDIFF_TYPE__) /* This case should work for GCC */ +#if defined(HAVE_STDINT_H) /* Use this case if we have ANSI headers */ +# define SQLITE_INT_TO_PTR(X) ((void*)(intptr_t)(X)) +# define SQLITE_PTR_TO_INT(X) ((int)(intptr_t)(X)) +#elif defined(__PTRDIFF_TYPE__) /* This case should work for GCC */ # define SQLITE_INT_TO_PTR(X) ((void*)(__PTRDIFF_TYPE__)(X)) # define SQLITE_PTR_TO_INT(X) ((int)(__PTRDIFF_TYPE__)(X)) #elif !defined(__GNUC__) /* Works for compilers other than LLVM */ # define SQLITE_INT_TO_PTR(X) ((void*)&((char*)0)[X]) # define SQLITE_PTR_TO_INT(X) ((int)(((char*)X)-(char*)0)) -#elif defined(HAVE_STDINT_H) /* Use this case if we have ANSI headers */ -# define SQLITE_INT_TO_PTR(X) ((void*)(intptr_t)(X)) -# define SQLITE_PTR_TO_INT(X) ((int)(intptr_t)(X)) #else /* Generates a warning - but it always works */ # define SQLITE_INT_TO_PTR(X) ((void*)(X)) # define SQLITE_PTR_TO_INT(X) ((int)(X)) |