- Timestamp:
- May 10, 2008, 6:28:58 PM (17 years ago)
- Location:
- trunk/ab5.0/abdev/BasicCompiler_Common
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ab5.0/abdev/BasicCompiler_Common/include/Class.h
r587 r593 431 431 432 432 private: 433 longvtbl_offset;434 longcomVtblOffset;435 longvtblMasterListOffset;433 int vtbl_offset; 434 int comVtblOffset; 435 int vtblMasterListOffset; 436 436 public: 437 437 std::vector<long> vtblMasterList; 438 LONG_PTRGetVtblOffset() const438 int GetVtblOffset() const 439 439 { 440 440 return vtbl_offset; … … 444 444 this->vtbl_offset = vtblOffset; 445 445 } 446 longGetComVtblOffset() const446 int GetComVtblOffset() const 447 447 { 448 448 return comVtblOffset; -
trunk/ab5.0/abdev/BasicCompiler_Common/include/Interface.h
r513 r593 42 42 { 43 43 const CClass *pInterfaceClass; 44 mutable LONG_PTRvtblOffset;44 mutable int vtblOffset; 45 45 46 46 // 型パラメータ(実パラメータ) … … 75 75 return *pInterfaceClass; 76 76 } 77 LONG_PTRGetVtblOffset() const77 int GetVtblOffset() const 78 78 { 79 79 return vtblOffset; 80 80 } 81 void SetVtblOffset( LONG_PTRvtblOffset ) const81 void SetVtblOffset( int vtblOffset ) const 82 82 { 83 83 this->vtblOffset = vtblOffset; -
trunk/ab5.0/abdev/BasicCompiler_Common/include/VtblGenerator.h
r587 r593 8 8 public: 9 9 // vtblを一時的に生成 10 static LONG_PTRGenerateVTablePart( const Methods &methods );10 static int GenerateVTablePart( const Methods &methods ); 11 11 static void GenerateFullVTables( CClass &_class ); 12 12 static void GenerateVTablesForAllClasses( Classes &classes ); -
trunk/ab5.0/abdev/BasicCompiler_Common/src/VtblGenerator.cpp
r587 r593 3 3 using namespace ActiveBasic::Compiler; 4 4 5 LONG_PTRVtblGenerator::GenerateVTablePart( const Methods &methods )5 int VtblGenerator::GenerateVTablePart( const Methods &methods ) 6 6 { 7 7 const UserProc **ppsi = (const UserProc **)malloc(methods.GetVtblNum()*sizeof(UserProc *)); … … 29 29 } 30 30 31 LONG_PTRvtableDataTableOffset = compiler.GetObjectModule().dataTable.AddBinary( (void *)ppsi, methods.GetVtblNum()*sizeof(LONG_PTR) );31 int vtableDataTableOffset = compiler.GetObjectModule().dataTable.AddBinary( (void *)ppsi, methods.GetVtblNum()*sizeof(LONG_PTR) ); 32 32 33 33 for( int i=0; i < methods.GetVtblNum(); i++ ) … … 61 61 62 62 // 自身のクラスのvtblを生成 63 LONG_PTRthisClassVtblOffset = GenerateVTablePart( _class.GetDynamicMethods() );63 int thisClassVtblOffset = GenerateVTablePart( _class.GetDynamicMethods() ); 64 64 _class.SetVtblOffset( thisClassVtblOffset ); 65 65 _class.vtblMasterList.push_back( thisClassVtblOffset ); … … 68 68 BOOST_FOREACH( const ::Interface *pInterface, _class.GetInterfaces() ) 69 69 { 70 LONG_PTRtempVtblOffset = GenerateVTablePart( pInterface->GetDynamicMethods() );70 int tempVtblOffset = GenerateVTablePart( pInterface->GetDynamicMethods() ); 71 71 _class.vtblMasterList.push_back( tempVtblOffset ); 72 72
Note:
See TracChangeset
for help on using the changeset viewer.