static void DeallocateConstructData( void *theEnv) { struct construct *tmpPtr, *nextPtr; #if (! RUN_TIME) && (! BLOAD_ONLY) DeallocateCallList(theEnv,ConstructData(theEnv)->ListOfSaveFunctions); #endif DeallocateCallList(theEnv,ConstructData(theEnv)->ListOfResetFunctions); DeallocateCallList(theEnv,ConstructData(theEnv)->ListOfClearFunctions); DeallocateCallList(theEnv,ConstructData(theEnv)->ListOfClearReadyFunctions); #if (! RUN_TIME) && (! BLOAD_ONLY) if (ConstructData(theEnv)->ErrorString != NULL) { genfree(theEnv,ConstructData(theEnv)->ErrorString,sizeof(ConstructData(theEnv)->ErrorString) + 1); } if (ConstructData(theEnv)->WarningString != NULL) { genfree(theEnv,ConstructData(theEnv)->WarningString,sizeof(ConstructData(theEnv)->WarningString) + 1); } ConstructData(theEnv)->ErrorString = NULL; ConstructData(theEnv)->WarningString = NULL; EnvSetParsingFileName(theEnv,NULL); EnvSetWarningFileName(theEnv,NULL); EnvSetErrorFileName(theEnv,NULL); #endif tmpPtr = ConstructData(theEnv)->ListOfConstructs; while (tmpPtr != NULL) { nextPtr = tmpPtr->next; rtn_struct(theEnv,construct,tmpPtr); tmpPtr = nextPtr; } }
globle void PrintWarningID( void *theEnv, const char *module, int warningID, int printCR) { #if (! RUN_TIME) && (! BLOAD_ONLY) FlushParsingMessages(theEnv); EnvSetWarningFileName(theEnv,EnvGetParsingFileName(theEnv)); ConstructData(theEnv)->WrnLineNumber = GetLineCount(theEnv); #endif if (printCR) EnvPrintRouter(theEnv,WWARNING,"\n"); EnvPrintRouter(theEnv,WWARNING,"["); EnvPrintRouter(theEnv,WWARNING,module); PrintLongInteger(theEnv,WWARNING,(long int) warningID); EnvPrintRouter(theEnv,WWARNING,"] WARNING: "); }