libarchive: Include integer types very early
In libarchive/archive_platform.h we should include <stdint.h> or <inttypes.h> immediately after "config.h" to define integer types referenced by configuration results. For example, on a non-conformant platform ssize_t might default to int64_t, so int64_t must be defined before ssize_t is used (and ssize_t is used in archive_windows.h).
This commit is contained in:
parent
ba21622048
commit
8cb1f4b0a4
|
@ -52,6 +52,14 @@
|
|||
#error Oops: No config.h and no pre-built configuration in archive_platform.h.
|
||||
#endif
|
||||
|
||||
/* Try to get standard C99-style integer type definitions. */
|
||||
#if HAVE_INTTYPES_H
|
||||
#include <inttypes.h>
|
||||
#endif
|
||||
#if HAVE_STDINT_H
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
|
||||
/* It should be possible to get rid of this by extending the feature-test
|
||||
* macros to cover Windows API functions, probably along with non-trivial
|
||||
* refactoring of code to find structures that sit more cleanly on top of
|
||||
|
@ -78,14 +86,6 @@
|
|||
#define __FBSDID(a) struct _undefined_hack
|
||||
#endif
|
||||
|
||||
/* Try to get standard C99-style integer type definitions. */
|
||||
#if HAVE_INTTYPES_H
|
||||
#include <inttypes.h>
|
||||
#endif
|
||||
#if HAVE_STDINT_H
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
|
||||
/* Borland warns about its own constants! */
|
||||
#if defined(__BORLANDC__)
|
||||
# if HAVE_DECL_UINT64_MAX
|
||||
|
|
Loading…
Reference in New Issue