WIP to make dtbuilder work on 64bit.

Fixes many, though not all 64bit-warnings.  In lots of places, pointers are
cast to ints to be then used as array subscripts.  The only way to deal with
this is to change them to long.  Additionally, use calloc() to allocate the
int_array in istr.c and drop the (wrong) macro patch to istr.h.  Should make
dtbuilder work on 32bit again.
This commit is contained in:
Pascal Stumpf
2012-08-13 17:35:34 +02:00
committed by Jon Trulson
parent 50e6c86bf4
commit 1177e21080
29 changed files with 138 additions and 134 deletions

View File

@@ -174,6 +174,7 @@ nl_catd Dtb_project_catd;
/* ARGSUSED */
int
main(int argc, STRING *argv)
{
int exitValue = 0;
@@ -939,7 +940,7 @@ mark_modules_to_load_and_write(
{
fileName = strlist_get_str(fileNames, i, &wasFoundVoidPtr);
assert(fileName != NULL);
wasFound = (BOOL)(unsigned)wasFoundVoidPtr;
wasFound = (BOOL)(unsigned long)wasFoundVoidPtr;
if (!wasFound)
{
util_printf_err("module not found in project: %s\n", fileName);

View File

@@ -162,7 +162,7 @@ typedef CGenAnyData CGenData;
#define mfobj_set_proj_data(_obj,_data) \
( mfobj_set_flags(_obj, CGenFlagDataIsProj), \
((int)(mfobj_data(_obj)->info.proj = (_data))) \
((long)(mfobj_data(_obj)->info.proj = (_data))) \
)
#define mfobj_get_proj_data(obj) \

View File

@@ -1485,7 +1485,7 @@ get_wclass_and_res_value(
BOOL foundEm = FALSE;
*wClassOut = NULL;
*resValueOut = NULL;
*resValueOut = 0;
if (wClass == NULL)
{

View File

@@ -205,7 +205,7 @@ abmfP_get_connect_includes(StringList includeFiles, ABObj projOrModule)
assert(project != NULL);
if (project == NULL)
{
return NULL;
return 0;
}
for (trav_open(&trav, projOrModule, AB_TRAV_ACTIONS_FOR_OBJ);

View File

@@ -282,7 +282,7 @@ printf_setval(GenCodeInfo genCodeInfo, ABObj obj, ...)
#if defined(__osf__) || defined(linux) || defined(CSRG_BASED)
/* OSF/1 define va_list in <va_list.h> as structure of char ** and int
* Sun define va_list as void * */
va_list paramList = { NULL, 0 };
va_list paramList = { 0, 0 };
#else
va_list paramList = NULL;
#endif /* __osf__ */