Ignore:
Timestamp:
Aug 14, 2007, 8:37:08 AM (17 years ago)
Author:
dai_9181
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abdev/BasicCompiler_Common/src/ObjectModule.cpp

    r279 r280  
    1414void ObjectModule::StaticLink( ObjectModule &objectModule )
    1515{
     16    long dataSectionBaseOffset = dataTable.GetSize();
     17    int sourceIndexBase = sources.size();
     18
    1619    // メタ情報を結合
    17     meta.StaticLink( objectModule.meta, dataTable.GetSize() );
     20    meta.StaticLink( objectModule.meta, dataSectionBaseOffset, sourceIndexBase );
    1821
    1922    // ネイティブコードを結合
     23    objectModule.globalNativeCode.ResetDataSectionBaseOffset( dataSectionBaseOffset );
     24    objectModule.globalNativeCode.ResetSourceIndexes( sourceIndexBase );
    2025    globalNativeCode.Put( objectModule.globalNativeCode );
    21     globalNativeCode.ResetDataSectionBaseOffset( dataTable.GetSize() );
    2226
    2327    // データテーブルを結合
    2428    dataTable.Add( objectModule.dataTable );
     29
     30    // ソースコードを結合
     31    BOOST_FOREACH( const BasicSource &source, objectModule.sources )
     32    {
     33        this->sources.push_back( source );
     34    }
    2535}
    2636
Note: See TracChangeset for help on using the changeset viewer.