Switch to a 64-bit time_t everywhere except 32-bit x86.

Thus, BeOS compatibility is preserved (and there is no risk of
breaking GCC5<->GCC2 interoperation on hybrid builds.)

This commit only makes the actual change, the build fixes are
in the next commit.
This commit is contained in:
Augustin Cavalier 2017-06-05 21:25:06 -04:00
parent 6ad3d25212
commit 39efd913c1
4 changed files with 27 additions and 7 deletions

View File

@ -300,8 +300,13 @@ typedef struct {
# define B_PRIdINO B_PRId64
# define B_PRIiINO B_PRIi64
/* time_t */
# define B_PRIdTIME B_PRId32
# define B_PRIiTIME B_PRIi32
# if defined(__i386__) && !defined(__x86_64__)
# define B_PRIdTIME B_PRId32
# define B_PRIiTIME B_PRIi32
# else
# define B_PRIdTIME B_PRId64
# define B_PRIiTIME B_PRIi64
# endif
#endif // !B_PRId8

View File

@ -176,8 +176,13 @@ typedef generic_addr_t generic_size_t;
#define B_PRIiINO B_PRIi64
/* time_t */
#define B_PRIdTIME B_PRId32
#define B_PRIiTIME B_PRIi32
#if defined(__i386__) && !defined(__x86_64__)
# define B_PRIdTIME B_PRId32
# define B_PRIiTIME B_PRIi32
#else
# define B_PRIdTIME B_PRId64
# define B_PRIiTIME B_PRIi64
#endif
/* bigtime_t */
#define B_PRIdBIGTIME B_PRId64

View File

@ -13,10 +13,15 @@ struct sigevent; /* defined in <signal.h> */
typedef __haiku_int32 clock_t;
typedef __haiku_int32 time_t;
typedef __haiku_int32 suseconds_t;
typedef __haiku_uint32 useconds_t;
#if defined(__i386__) && !defined(__x86_64__)
typedef __haiku_int32 time_t;
#else
typedef __haiku_int64 time_t;
#endif
#define CLOCKS_PER_SEC 1000000
#define CLK_TCK CLOCKS_PER_SEC

View File

@ -1615,8 +1615,13 @@
#define B_PRIdINO FSSH_B_PRIdINO
#define B_PRIiINO FSSH_B_PRIiINO
/* time_t */
#define B_PRIdTIME FSSH_B_PRId32
#define B_PRIiTIME FSSH_B_PRIi32
#if defined(__i386__) && !defined(__x86_64__)
# define B_PRIdTIME FSSH_B_PRId32
# define B_PRIiTIME FSSH_B_PRIi32
#else
# define B_PRIdTIME FSSH_B_PRId64
# define B_PRIiTIME FSSH_B_PRIi64
#endif
////////////////////////////////////////////////////////////////////////////////