diff --git a/sources/float.c b/sources/float.c index 748de185..c03b1b6e 100644 --- a/sources/float.c +++ b/sources/float.c @@ -64,12 +64,12 @@ void SimpleDeltaC(mpf_t sum, int m); void SingleTable(mpf_t *tabl, int N, int m, int pow); void DoubleTable(mpf_t *tabout, mpf_t *tabin, int N, int m, int pow); void EndTable(mpf_t sum, mpf_t *tabin, int N, int m, int pow); -void deltaMZV(mpf_t, int *, int); -void deltaEuler(mpf_t, int *, int); -void deltaEulerC(mpf_t, int *, int); -void CalculateMZVhalf(mpf_t, int *, int); -void CalculateMZV(mpf_t, int *, int); -void CalculateEuler(mpf_t, int *, int); +void deltaMZV(mpf_t, WORD *, int); +void deltaEuler(mpf_t, WORD *, int); +void deltaEulerC(mpf_t, WORD *, int); +void CalculateMZVhalf(mpf_t, WORD *, int); +void CalculateMZV(mpf_t, WORD *, int); +void CalculateEuler(mpf_t, WORD *, int); int ExpandMZV(WORD *term, WORD level); int ExpandEuler(WORD *term, WORD level); int PackFloat(WORD *,mpf_t); @@ -1201,7 +1201,7 @@ void SetupMPFTables(void) a = (mpf_t *)AB[id]->T.aux_; mpf_inits(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],(mpf_ptr)0); if ( AB[id]->T.indi1 ) M_free(AB[id]->T.indi1,"indi1"); - AB[id]->T.indi1 = (int *)Malloc1(sizeof(int)*AC.MaxWeight*2,"indi1"); + AB[id]->T.indi1 = (WORD *)Malloc1(sizeof(WORD)*AC.MaxWeight*2,"indi1"); AB[id]->T.indi2 = AB[id]->T.indi1 + AC.MaxWeight; } #else @@ -1215,7 +1215,7 @@ void SetupMPFTables(void) AT.aux_ = (void *)Malloc1(sizeof(mpf_t)*8,"AT.aux_"); mpf_inits(aux1,aux2,aux3,aux4,aux5,auxjm,auxjjm,auxsum,(mpf_ptr)0); if ( AT.indi1 ) M_free(AT.indi1,"indi1"); - AT.indi1 = (int *)Malloc1(sizeof(int)*AC.MaxWeight*2,"indi1"); + AT.indi1 = (WORD *)Malloc1(sizeof(WORD)*AC.MaxWeight*2,"indi1"); AT.indi2 = AT.indi1 + AC.MaxWeight; #endif /* @@ -1938,7 +1938,7 @@ void EndTable(mpf_t sum, mpf_t *tabin, int N, int m, int pow) #[ deltaMZV : */ -void deltaMZV(mpf_t result, int *indexes, int depth) +void deltaMZV(mpf_t result, WORD *indexes, int depth) { GETIDENTITY /* @@ -2005,7 +2005,7 @@ void deltaMZV(mpf_t result, int *indexes, int depth) Regular Euler delta with - signs, but everywhere 1/2^j */ -void deltaEuler(mpf_t result, int *indexes, int depth) +void deltaEuler(mpf_t result, WORD *indexes, int depth) { GETIDENTITY int m; @@ -2061,7 +2061,7 @@ void deltaEuler(mpf_t result, int *indexes, int depth) When there is a - in the string we have 1/4. */ -void deltaEulerC(mpf_t result, int *indexes, int depth) +void deltaEulerC(mpf_t result, WORD *indexes, int depth) { GETIDENTITY int m; @@ -2134,7 +2134,7 @@ void deltaEulerC(mpf_t result, int *indexes, int depth) MZV's have to be calculated at the same time. */ -void CalculateMZVhalf(mpf_t result, int *indexes, int depth) +void CalculateMZVhalf(mpf_t result, WORD *indexes, int depth) { int i; if ( depth < 0 ) { @@ -2155,7 +2155,7 @@ void CalculateMZVhalf(mpf_t result, int *indexes, int depth) #[ CalculateMZV : */ -void CalculateMZV(mpf_t result, int *indexes, int depth) +void CalculateMZV(mpf_t result, WORD *indexes, int depth) { GETIDENTITY int num1, num2 = 0, i, j = 0; @@ -2220,12 +2220,12 @@ void CalculateMZV(mpf_t result, int *indexes, int depth) Hence we start with a conversion. */ -void CalculateEuler(mpf_t result, int *Zindexes, int depth) +void CalculateEuler(mpf_t result, WORD *Zindexes, int depth) { GETIDENTITY int s1, num1, num2, i, j; - int *indexes = (int *)(AT.WorkPointer); + WORD *indexes = AT.WorkPointer; for ( i = 0; i < depth; i++ ) indexes[i] = Zindexes[i]; for ( i = 0; i < depth-1; i++ ) { if ( Zindexes[i] < 0 ) { diff --git a/sources/pre.c b/sources/pre.c index 2953c80d..9165866e 100644 --- a/sources/pre.c +++ b/sources/pre.c @@ -568,7 +568,7 @@ UBYTE *GetPreVar(UBYTE *name, int flag) else if ( ( StrICmp(name,(UBYTE *)"timer_") == 0 ) || ( StrICmp(name,(UBYTE *)"stopwatch_") == 0 ) ) { static char timestring[40]; - snprintf(timestring,40,"%ld",(GetRunningTime() - AP.StopWatchZero)); + snprintf(timestring,40,"%ld",(long int)(GetRunningTime() - AP.StopWatchZero)); return((UBYTE *)timestring); } else if ( StrICmp(name, (UBYTE *)"numactiveexprs_") == 0 ) { diff --git a/sources/sch.c b/sources/sch.c index bab9eb3e..7a66fe69 100644 --- a/sources/sch.c +++ b/sources/sch.c @@ -338,7 +338,7 @@ void RatToLine(UWORD *a, WORD na) { GETIDENTITY WORD adenom, anumer; - UWORD maxInt; + ULONG maxInt; if ( AC.OutputMode == CMODE ) { // In C, integer literals over 2^32-1 are automatically promoted to longer types up to diff --git a/sources/structs.h b/sources/structs.h index 59d627af..d287ff24 100644 --- a/sources/structs.h +++ b/sources/structs.h @@ -924,8 +924,8 @@ typedef struct { #[ Varia : */ -typedef WORD (*FINISHUFFLE)(WORD *); -typedef WORD (*DO_UFFLE)(WORD *,WORD,WORD,WORD); +typedef int (*FINISHUFFLE)(WORD *); +typedef int (*DO_UFFLE)(WORD *,WORD,WORD,WORD); #ifdef WITHPTHREADS typedef WORD (*COMPAREDUMMY)(void *,WORD *,WORD *,WORD); @@ -1811,6 +1811,8 @@ struct C_const { int nummodels; int modelspace; int ModelLevel; + int ShortStatsMax; /* For On FewerStatistics 10; */ + int InnerTest; /* For debugging */ WORD argsumcheck[MAXNEST]; /* (C) Checking of nesting */ WORD insidesumcheck[MAXNEST];/* (C) Checking of nesting */ WORD inexprsumcheck[MAXNEST];/* (C) Checking of nesting */ @@ -1855,11 +1857,9 @@ struct C_const { WORD lPolyFunPow; WORD SymChangeFlag; /* (C) */ WORD CollectPercentage; /* (C) Collect function percentage */ - WORD ShortStatsMax; /* For On FewerStatistics 10; */ WORD extrasymbols; /* Flag for the extra symbols output mode */ WORD PolyRatFunChanged; /* Keeps track whether we changed in the compiler */ WORD ToBeInFactors; - WORD InnerTest; /* For debugging */ #ifdef WITHMPI WORD RhsExprInModuleFlag; /* (C) Set by the compiler if RHS expressions exists. */ #endif @@ -2043,8 +2043,8 @@ struct T_const { WORD *TopologiesTerm; WORD *TopologiesStart; #ifdef WITHFLOAT - int *indi1; - int *indi2; + WORD *indi1; + WORD *indi2; void *mpf_tab1; void *mpf_tab2; void *aux_; @@ -2341,6 +2341,7 @@ struct O_const { int CurDictNotInFunctions; int CurDictInDollars; int gNumDictionaries; + int IndentSpace; /* For indentation in output */ #ifdef WITHFLOAT int FloatPrec; #endif @@ -2356,7 +2357,6 @@ struct O_const { WORD PrintType; /* (O) */ WORD FortFirst; /* (O) Only in sch.c */ WORD DoubleFlag; /* (O) Output in double precision */ - WORD IndentSpace; /* For indentation in output */ WORD FactorMode; /* When the output should be written as factors */ WORD FactorNum; /* Number of factor currently treated */ WORD ErrorBlock; @@ -2468,11 +2468,11 @@ typedef struct AllGlobals { #endif #ifdef ANSI -typedef WORD (*WCN)(PHEAD WORD *,WORD *,WORD,WORD); -typedef WORD (*WCN2)(PHEAD WORD *,WORD *); +typedef int (*WCN)(PHEAD WORD *,WORD *,WORD,WORD); +typedef int (*WCN2)(PHEAD WORD *,WORD *); #else -typedef WORD (*WCN)(); -typedef WORD (*WCN2)(); +typedef int (*WCN)(); +typedef int (*WCN2)(); #endif typedef WORD (*COMPARE)(PHEAD WORD *,WORD *,WORD);