Changeset 34 in dev for BasicCompiler32/Compile_ProcOp.cpp
- Timestamp:
- Jan 14, 2007, 6:11:23 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
BasicCompiler32/Compile_ProcOp.cpp
r31 r34 88 88 bCompilingGlobal=1; 89 89 90 CallDestrouctorsOfScope();90 obj_LexScopes.CallDestructorsOfScopeEnd(); 91 91 92 92 bCompilingGlobal=bBackCompilingGlobal; … … 658 658 } 659 659 660 //プロシージャ抜け出しスケジュール(Exit Sub/Function)661 for(i3=0;i3<ExitSubScheduleNum;i3++){662 *((long *)(OpBuffer+pExitSubSchedule[i3]))=obp-(pExitSubSchedule[i3]+sizeof(long));663 }664 HeapDefaultFree(pExitSubSchedule);665 666 if(bDebugCompile&&bDebugSupportProc==0){667 *((long *)(OpBuffer+EspOffsetSchedule))=AllLocalVarSize-BaseOffset;668 669 //call _DebugSys_EndProc670 extern SUBINFO *pSub_DebugSys_EndProc;671 op_call(pSub_DebugSys_EndProc);672 }673 674 660 //ラベル用のメモリを解放 675 661 for(i3=0;i3<MaxLabelNum;i3++){ … … 707 693 708 694 //ローカルオブジェクトの解放処理 709 CallDestrouctorsOfScope(); 695 obj_LexScopes.CallDestructorsOfScopeEnd(); 696 697 //プロシージャ抜け出しスケジュール(Exit Sub/Function) 698 for(i3=0;i3<ExitSubScheduleNum;i3++){ 699 *((long *)(OpBuffer+pExitSubSchedule[i3]))=obp-(pExitSubSchedule[i3]+sizeof(long)); 700 } 701 HeapDefaultFree(pExitSubSchedule); 702 703 if(bDebugCompile&&bDebugSupportProc==0){ 704 *((long *)(OpBuffer+EspOffsetSchedule))=AllLocalVarSize-BaseOffset; 705 706 //call _DebugSys_EndProc 707 extern SUBINFO *pSub_DebugSys_EndProc; 708 op_call(pSub_DebugSys_EndProc); 709 } 710 710 711 711 if(psi->ReturnType!=-1){
Note:
See TracChangeset
for help on using the changeset viewer.