Ignore:
Timestamp:
Jun 24, 2007, 6:50:40 PM (17 years ago)
Author:
dai_9181
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abdev/BasicCompiler32/Compile_Statement.cpp

    r142 r183  
     1#include <jenga/include/smoothie/LexicalAnalysis.h>
     2
     3#include <LexicalScopingImpl.h>
     4#include <Compiler.h>
     5
    16#include "../BasicCompiler_Common/common.h"
    27#include "Opcode.h"
     
    274279
    275280    //レキシカルスコープをレベルアップ
    276     obj_LexScopes.Start( obp, SCOPE_TYPE_IF );
     281    GetLexicalScopes().Start( obp, SCOPE_TYPE_IF );
    277282
    278283    i2=CompileBuffer(ESC_ENDIF,0);
    279284
    280285    //レキシカルスコープをレベルダウン
    281     obj_LexScopes.End();
     286    GetLexicalScopes().End();
    282287
    283288
     
    299304
    300305        //レキシカルスコープをレベルアップ
    301         obj_LexScopes.Start( obp, SCOPE_TYPE_IF );
     306        GetLexicalScopes().Start( obp, SCOPE_TYPE_IF );
    302307
    303308        CompileBuffer(ESC_ENDIF,0);
    304309
    305310        //レキシカルスコープをレベルダウン
    306         obj_LexScopes.End();
     311        GetLexicalScopes().End();
    307312
    308313
     
    525530
    526531    //レキシカルスコープをレベルアップ
    527     obj_LexScopes.Start( obp, SCOPE_TYPE_WHILE );
     532    GetLexicalScopes().Start( obp, SCOPE_TYPE_WHILE );
    528533
    529534    //While内をコンパイル
    530535    CompileBuffer(0,COM_WEND);
    531536
    532     obj_LexScopes.CallDestructorsOfScopeEnd();
     537    GetLexicalScopes().CallDestructorsOfScopeEnd();
    533538
    534539    if( i3 == -1 ){
     
    542547
    543548    //レキシカルスコープをレベルダウン
    544     obj_LexScopes.End();
     549    GetLexicalScopes().End();
    545550
    546551    *((long *)(OpBuffer+je_schedule-sizeof(long)))=obp-je_schedule; //jeジャンプ先のオフセット値
     
    660665
    661666    //レキシカルスコープをレベルアップ
    662     obj_LexScopes.Start( obp, SCOPE_TYPE_FOR );
     667    GetLexicalScopes().Start( obp, SCOPE_TYPE_FOR );
    663668
    664669    //For内をコンパイル
    665670    CompileBuffer(0,COM_NEXT);
    666671
    667     obj_LexScopes.CallDestructorsOfScopeEnd();
     672    GetLexicalScopes().CallDestructorsOfScopeEnd();
    668673
    669674    if(szNextVariable[0]){
     
    679684
    680685    //レキシカルスコープをレベルダウン
    681     obj_LexScopes.End();
     686    GetLexicalScopes().End();
    682687
    683688    *((long *)(OpBuffer+je_schedule))=obp-(je_schedule+sizeof(long)); //jeジャンプ先のオフセット値
     
    700705
    701706    //レキシカルスコープをレベルアップ
    702     obj_LexScopes.Start( obp, SCOPE_TYPE_DO );
     707    GetLexicalScopes().Start( obp, SCOPE_TYPE_DO );
    703708
    704709    //Do内をコンパイル
    705710    CompileBuffer(0,COM_LOOP);
    706711
    707     obj_LexScopes.CallDestructorsOfScopeEnd();
     712    GetLexicalScopes().CallDestructorsOfScopeEnd();
    708713
    709714    extern char *basbuf;
     
    908913
    909914    //レキシカルスコープをレベルダウン
    910     obj_LexScopes.End();
     915    GetLexicalScopes().End();
    911916
    912917    *((long *)(OpBuffer+je_schedule))=obp-(je_schedule+sizeof(long)); //jmpジャンプ先のオフセット値
     
    942947
    943948    //未解放のローカルオブジェクトのデストラクタを呼び出す
    944     obj_LexScopes.CallDestructorsOfReturn();
     949    GetLexicalScopes().CallDestructorsOfReturn();
    945950
    946951    //jmp ...(End Sub/Function)
     
    12171222
    12181223    //レキシカルスコープをレベルアップ
    1219     obj_LexScopes.Start( obp, SCOPE_TYPE_SELECT );
     1224    GetLexicalScopes().Start( obp, SCOPE_TYPE_SELECT );
    12201225
    12211226    //Select Case内をコンパイル
     
    12341239
    12351240    //レキシカルスコープをレベルダウン
    1236     obj_LexScopes.End();
     1241    GetLexicalScopes().End();
    12371242
    12381243    pCaseSchedule=temp_pCaseSchedule;
Note: See TracChangeset for help on using the changeset viewer.