Changeset 27 in dev for BasicCompiler_Common/Variable.cpp


Ignore:
Timestamp:
Jan 7, 2007, 6:51:20 AM (17 years ago)
Author:
dai_9181
Message:

静的メンバ、静的メソッド周りを修正。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BasicCompiler_Common/Variable.cpp

    r20 r27  
    724724
    725725
    726     ////////////////////
    727     // グローバル変数
    728     ////////////////////
    729 
    730     for(i=MaxGlobalVarNum-1;i>=0;i--){  //レキシカルスコープを考慮してバックサーチ
    731         if(GlobalVar[i].bLiving){
    732             if(lstrcmp(VarName,GlobalVar[i].name)==0) break;
    733         }
    734     }
    735 
    736     if(i>=0){
    737         goto GlobalOk;
    738     }
    739 
    740 
    741726    //////////////////////////
    742727    // クラスの静的メンバ
     
    745730    if(member[0]){
    746731        lstrcpy(temporary,member);
    747         GetVarFormatString(temporary,array,lpPtrOffset,member,&i);
     732        char tempMember[VN_SIZE];
     733        char tempArray[VN_SIZE];
     734        GetVarFormatString(temporary,tempArray,lpPtrOffset,tempMember,&i);
    748735
    749736        char temp2[VN_SIZE];
     
    754741
    755742        if(i!=MaxGlobalVarNum){
     743            lstrcpy(member,tempMember);
     744            lstrcpy(array,tempArray);
    756745            goto GlobalOk;
    757746        }
     
    769758            goto GlobalOk;
    770759        }
     760    }
     761
     762
     763    ////////////////////
     764    // グローバル変数
     765    ////////////////////
     766
     767    for(i=MaxGlobalVarNum-1;i>=0;i--){  //レキシカルスコープを考慮してバックサーチ
     768        if(GlobalVar[i].bLiving){
     769            if(lstrcmp(VarName,GlobalVar[i].name)==0) break;
     770        }
     771    }
     772
     773    if(i>=0){
     774        goto GlobalOk;
    771775    }
    772776
     
    10191023    }
    10201024
    1021     //関数
     1025    //関数(またはメソッド)
    10221026    lstrcat(FullName,pCompilingSubInfo->name);
    10231027    lstrcat(FullName,"%");
     
    10291033    lstrcat(FullName,"%");
    10301034
     1035    //変数名
    10311036    lstrcat(FullName,VarName);
    10321037
Note: See TracChangeset for help on using the changeset viewer.