+/* The types used for size_t and ptrdiff_t should not have an integer conversion
+ rank greater than that of signed long int unless the implementation supports
+ objects large enough to make this necessary.
+*/
+
+/* Result type of substracting two pointers (must be signed) */
+#if defined(__amd64__) || defined(_M_AMD64)
+#define _PDCLIB_ptrdiff long long
+#define _PDCLIB_PTRDIFF LLONG
+#define _PDCLIB_PTR_CONV ll
+#else
+#define _PDCLIB_ptrdiff int
+#define _PDCLIB_PTRDIFF INT
+#define _PDCLIB_PTR_CONV
+#endif
+
+/* Result type of the 'sizeof' operator (must be unsigned) */