diff --git a/src/cc65/codegen.c b/src/cc65/codegen.c index 3a98f5e63..5bfc6696b 100644 --- a/src/cc65/codegen.c +++ b/src/cc65/codegen.c @@ -33,6 +33,7 @@ +#include #include #include #include @@ -42,7 +43,6 @@ #include "addrsize.h" #include "check.h" #include "cpu.h" -#include "inttypes.h" #include "strbuf.h" #include "xmalloc.h" #include "xsprintf.h" @@ -689,7 +689,7 @@ void g_restore_regvars (int StackOffs, int RegOffs, unsigned Bytes) -void g_getimmed (unsigned Flags, unsigned long Val, long Offs) +void g_getimmed (unsigned Flags, uintptr_t Val, long Offs) /* Load a constant into the primary register */ { unsigned char B1, B2, B3, B4; @@ -4394,7 +4394,7 @@ void g_res (unsigned n) -void g_defdata (unsigned flags, unsigned long val, long offs) +void g_defdata (unsigned flags, uintptr_t val, long offs) /* Define data with the size given in flags */ { if (flags & CF_CONST) { @@ -4403,15 +4403,15 @@ void g_defdata (unsigned flags, unsigned long val, long offs) switch (flags & CF_TYPEMASK) { case CF_CHAR: - AddDataLine ("\t.byte\t$%02lX", val & 0xFF); + AddDataLine ("\t.byte\t$%02"PRIXPTR, val & 0xFF); break; case CF_INT: - AddDataLine ("\t.word\t$%04lX", val & 0xFFFF); + AddDataLine ("\t.word\t$%04"PRIXPTR, val & 0xFFFF); break; case CF_LONG: - AddDataLine ("\t.dword\t$%08lX", val & 0xFFFFFFFF); + AddDataLine ("\t.dword\t$%08"PRIXPTR, val & 0xFFFFFFFF); break; default: diff --git a/src/cc65/codegen.h b/src/cc65/codegen.h index b0cf9858d..1de71e7d3 100644 --- a/src/cc65/codegen.h +++ b/src/cc65/codegen.h @@ -37,10 +37,10 @@ #define CODEGEN_H +#include /* common */ #include "coll.h" -#include "inttypes.h" /* cc65 */ #include "segments.h" @@ -271,7 +271,7 @@ void g_restore_regvars (int StackOffs, int RegOffs, unsigned Bytes); -void g_getimmed (unsigned Flags, unsigned long Val, long Offs); +void g_getimmed (unsigned Flags, uintptr_t Val, long Offs); /* Load a constant into the primary register */ void g_getstatic (unsigned Flags, uintptr_t Label, long Offs); @@ -461,7 +461,7 @@ void g_ge (unsigned flags, unsigned long val); void g_res (unsigned n); /* Reserve static storage, n bytes */ -void g_defdata (unsigned flags, unsigned long val, long offs); +void g_defdata (unsigned flags, uintptr_t val, long offs); /* Define data with the size given in flags */ void g_defbytes (const void* bytes, unsigned count); diff --git a/src/cc65/exprdesc.h b/src/cc65/exprdesc.h index a1487a0bd..13eb36e5e 100644 --- a/src/cc65/exprdesc.h +++ b/src/cc65/exprdesc.h @@ -38,12 +38,12 @@ +#include #include /* common */ #include "fp.h" #include "inline.h" -#include "inttypes.h" /* cc65 */ #include "asmcode.h" diff --git a/src/common.vcxproj b/src/common.vcxproj index f7929df2b..df99fc4a9 100644 --- a/src/common.vcxproj +++ b/src/common.vcxproj @@ -74,7 +74,6 @@ - diff --git a/src/common/inttypes.h b/src/common/inttypes.h deleted file mode 100644 index 28ffb2cc5..000000000 --- a/src/common/inttypes.h +++ /dev/null @@ -1,123 +0,0 @@ -/*****************************************************************************/ -/* */ -/* inttypes.h */ -/* */ -/* Define integer types */ -/* */ -/* */ -/* */ -/* (C) 2004 Ullrich von Bassewitz */ -/* Roemerstrasse 52 */ -/* D-70794 Filderstadt */ -/* EMail: uz@cc65.org */ -/* */ -/* */ -/* This software is provided 'as-is', without any expressed or implied */ -/* warranty. In no event will the authors be held liable for any damages */ -/* arising from the use of this software. */ -/* */ -/* Permission is granted to anyone to use this software for any purpose, */ -/* including commercial applications, and to alter it and redistribute it */ -/* freely, subject to the following restrictions: */ -/* */ -/* 1. The origin of this software must not be misrepresented; you must not */ -/* claim that you wrote the original software. If you use this software */ -/* in a product, an acknowledgment in the product documentation would be */ -/* appreciated but is not required. */ -/* 2. Altered source versions must be plainly marked as such, and must not */ -/* be misrepresented as being the original software. */ -/* 3. This notice may not be removed or altered from any source */ -/* distribution. */ -/* */ -/*****************************************************************************/ - - - -#ifndef INTTYPES_H -#define INTTYPES_H - - - -/* If we have , include it; otherwise, adapt types from -** and define integer boundary constants. -** gcc and msvc don't define __STDC_VERSION__ without special flags, so check -** for them explicitly. Undefined symbols are replaced by zero; so, checks for -** defined(__GNUC__) and defined(_MSC_VER) aren't necessary. -*/ -#if (__STDC_VERSION__ >= 199901) || (__GNUC__ >= 3) || (_MSC_VER >= 1600) -#include -#else - -/* Assume that ptrdiff_t and size_t are wide enough to hold pointers. -** Assume that they are the widest type. -*/ -#include -#include - -typedef ptrdiff_t intptr_t; -typedef size_t uintptr_t; -typedef ptrdiff_t intmax_t; -typedef size_t uintmax_t; - -#define INT8_MAX (0x7F) -#define INT16_MAX (0x7FFF) -#define INT32_MAX (0x7FFFFFFF) - -#define INT8_MIN (-INT8_MAX - 1) -#define INT16_MIN (-INT16_MAX - 1) -#define INT32_MIN (-INT32_MAX - 1) - -#define UINT8_MAX (0xFF) -#define UINT16_MAX (0xFFFF) -#define UINT32_MAX (0xFFFFFFFF) - -#if UCHAR_MAX == UINT8_MAX -typedef unsigned char uint8_t; -#else -#error "No suitable type for uint8_t found." -#endif - -#if SCHAR_MIN == INT8_MIN && SCHAR_MAX == INT8_MAX -typedef signed char int8_t; -#else -#error "No suitable type for int8_t found." -#endif - -#if UINT_MAX == UINT16_MAX -typedef unsigned int uint16_t; -#elif USHRT_MAX == UINT16_MAX -typedef unsigned short uint16_t; -#else -#error "No suitable type for uint16_t found." -#endif - -#if INT_MIN == INT16_MIN && INT_MAX == INT16_MAX -typedef int int16_t; -#elif SHRT_MIN == INT16_MIN && SHRT_MAX == INT16_MAX -typedef short int16_t; -#else -#error "No suitable type for int16_t found." -#endif - -#if UINT_MAX == UINT32_MAX -typedef unsigned int uint32_t; -#elif ULONG_MAX == UINT32_MAX -typedef unsigned long uint32_t; -#else -#error "No suitable type for uint32_t found." -#endif - -#if INT_MIN == INT32_MIN && INT_MAX == INT32_MAX -typedef int int32_t; -#elif LONG_MIN == INT32_MIN && LONG_MAX == INT32_MAX -typedef long int32_t; -#else -#error "No suitable type for int32_t found." -#endif - -#endif - - - -/* End of inttypes.h */ -#endif diff --git a/src/common/xsprintf.c b/src/common/xsprintf.c index a7d26d5ef..5994bb604 100644 --- a/src/common/xsprintf.c +++ b/src/common/xsprintf.c @@ -33,6 +33,7 @@ +#include #include #include #include @@ -41,7 +42,6 @@ /* common */ #include "chartype.h" #include "check.h" -#include "inttypes.h" #include "strbuf.h" #include "va_copy.h" #include "xsprintf.h"