Changeset 90 in dev for BasicCompiler32/Compile_ProcOp.cpp


Ignore:
Timestamp:
Apr 7, 2007, 3:02:29 PM (18 years ago)
Author:
dai_9181
Message:

実行時型情報の生成にほぼ対応した。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BasicCompiler32/Compile_ProcOp.cpp

    r89 r90  
    204204        obp+=31;
    205205    }
    206     else if( userProc.GetName() == "InitializeUserTypes"
     206    else{
     207        SetError();
     208    }
     209}
     210void AutoGeneration(UserProc &userProc){
     211    if( userProc.GetName() == "InitializeUserTypes"
    207212        && userProc.HasParentClass()
    208213        && (string)userProc.GetParentClass().name == "_System_TypeBase" ){
     
    540545    //////////////////////////////////////////
    541546    ////// プロシージャ内をコンパイル ////////
    542     if(pUserProc->IsMacro()) CompileBuffer(ESC_ENDMACRO,0);
     547    if( pUserProc->IsAutoGeneration() ){
     548        AutoGeneration( *pUserProc );
     549    }
    543550    else{
    544         if(pUserProc->IsSub()) CompileBuffer(ESC_ENDSUB,0);
    545         else if(pUserProc->IsFunction()) CompileBuffer(ESC_ENDFUNCTION,0);
     551        if(pUserProc->IsMacro()){
     552            CompileBuffer(ESC_ENDMACRO,0);
     553        }
     554        else{
     555            if(pUserProc->IsSub()){
     556                CompileBuffer(ESC_ENDSUB,0);
     557            }
     558            else if(pUserProc->IsFunction()){
     559                CompileBuffer(ESC_ENDFUNCTION,0);
     560            }
     561        }
    546562    }
    547563    //////////////////////////////////////////
Note: See TracChangeset for help on using the changeset viewer.