Changeset 393 in dev


Ignore:
Timestamp:
Feb 24, 2008, 6:59:33 PM (17 years ago)
Author:
dai_9181
Message:

デバッガ変数リストのローカル変数のスコープ判定が間違っていたため、修正。

Location:
trunk/abdev/BasicCompiler_Common
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/abdev/BasicCompiler_Common/VarList.cpp

    r280 r393  
    372372
    373373        //スコープ外の場合は無視
    374         if(pVar->GetScopeLevel()!=0){
    375             if(rva_to_real(pVar->GetScopeStartAddress()) <= pobj_dti->lplpObp[i2]  &&
    376                 pobj_dti->lplpObp[i2] < rva_to_real(pVar->GetScopeEndAddress())){
     374        int scopeBeginAddressRva = pUserProc->GetBeginOpAddress() + pVar->GetScopeStartAddress();
     375        int scopeEndAddressRva = pUserProc->GetBeginOpAddress() + pVar->GetScopeEndAddress();
     376        if(pVar->GetScopeLevel()!=0)
     377        {
     378            if( rva_to_real( scopeBeginAddressRva ) <= pobj_dti->lplpObp[i2]
     379                && pobj_dti->lplpObp[i2] < rva_to_real( scopeEndAddressRva ) )
     380            {
    377381                //範囲内
    378382            }
  • trunk/abdev/BasicCompiler_Common/common.h

    r387 r393  
    214214//BasicCompiler.cpp
    215215void HeapDefaultFree(LPVOID lpMem);
    216 void ts(int i);
     216void ts(int i = 0);
    217217void ts(int i,int i2);
    218218void ts(const char *msg);
  • trunk/abdev/BasicCompiler_Common/src/Linker.cpp

    r370 r393  
    264264        if( pUserProc->GetNativeCode().GetSize() > 0 )
    265265        {
    266             pUserProc->SetBeginOpAddress( nativeCode.GetSize() );
    267 
     266            // 関数の開始位置(コードセクションからのオフセット)
     267            int beginCodePos = nativeCode.GetSize();
     268
     269            // コードセクションに関数のネイティブコードを追加
    268270            nativeCode.PutEx( pUserProc->GetNativeCode() );
    269271
    270             pUserProc->SetEndOpAddress( nativeCode.GetSize() );
     272            // 関数の終了位置(コードセクションからのオフセット)
     273            int endCodePos = nativeCode.GetSize();
     274
     275            // コードセクション内の関数の範囲を設定
     276            pUserProc->SetBeginOpAddress( beginCodePos );
     277            pUserProc->SetEndOpAddress( endCodePos );
    271278        }
    272279    }
Note: See TracChangeset for help on using the changeset viewer.