pch_status PCHReadModuleData( void ) { uint_8 has_state_table; module_init_func = SymbolPCHRead(); module_init_scope = ScopePCHRead(); module_fd.fn_scope = ScopePCHRead(); PCHReadVar( has_state_table ); module_fd.has_state_tab = ( has_state_table != 0 ); LabelPCHRead( &module_fd.label_mem ); return( PCHCB_OK ); }
pch_status PCHReadGenerators( void ) { SYMBOL read_symbol; TYPE read_type; carveRTN_GEN = CarveRestart( carveRTN_GEN ); useSYMBOL = NULL; useTYPE = NULL; while( (read_symbol = SymbolPCHRead()) != NULL ) { addGenRoutine( &useSYMBOL, PCHReadUInt(), read_symbol ); } while( (read_type = TypePCHRead()) != NULL ) { addGenRoutine( &useTYPE, PCHReadUInt(), read_type ); } return( PCHCB_OK ); }
static void readExtrefs( void ) { SYMBOL sym; unsigned len; PRAG_EXT_REF *entry; RingFree( &pragmaExtrefs ); while( (sym = SymbolPCHRead()) != NULL ) { entry = RingAlloc( &pragmaExtrefs, offsetof( PRAG_EXT_REF, name ) + 1 ); entry->symbol = sym; entry->name[0] = '\0'; } while( (len = PCHReadUInt()) != 0 ) { entry = RingAlloc( &pragmaExtrefs, offsetof( PRAG_EXT_REF, name ) + len + 1 ); PCHRead( entry->name, len + 1 ); entry->symbol = NULL; } }