From 7a461cbbd0d41b5c1e6f0eb5b39e5f5d0804ab98 Mon Sep 17 00:00:00 2001 From: Jay Krell Date: Sun, 30 Jun 2019 03:26:56 -0700 Subject: [PATCH] Get __int64 on VMS (Alpha and IA64, not VAX). Get __int64 via hypothetical macro. For VMS, confirmation can be seen here: See https://support.hpe.com/hpsc/doc/public/display?docId=emr_na-c04623066 See https://support.hpe.com/hpsc/doc/public/display?docId=a00058500en_us Including the implied refinements to avoid OSF and VAX. They have long long too, but I *hypothesize* that __int64 came first -- I don't know. Microsoft is certainly that way -- supporting both but __int64 came much earlier. --- contrib/minizip/ioapi.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/contrib/minizip/ioapi.h b/contrib/minizip/ioapi.h index 8dcbdb0..82ea3a9 100644 --- a/contrib/minizip/ioapi.h +++ b/contrib/minizip/ioapi.h @@ -94,7 +94,10 @@ typedef uint64_t ZPOS64_T; /* Maximum unsigned 32-bit value used as placeholder for zip64 */ #define MAXU32 0xffffffff -#if defined(_MSC_VER) || defined(__BORLANDC__) +/* See https://support.hpe.com/hpsc/doc/public/display?docId=emr_na-c04623066 (C) + * See https://support.hpe.com/hpsc/doc/public/display?docId=a00058500en_us (C++) + */ +#if defined(_MSC_VER) || defined(__BORLANDC__) || ((defined(__DECC) || defined(__DECCXX)) && !defined(__osf) && (defined(__alpha) || defined(__ia64) || defined(__IA64))) || defined(__int64) typedef unsigned __int64 ZPOS64_T; #else typedef unsigned long long int ZPOS64_T;