Changeset 204 in dev for trunk/abdev/BasicCompiler32
- Timestamp:
- Jul 3, 2007, 3:49:56 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler32/Compile_ProcOp.cpp
r199 r204 472 472 //(継承元がインターフェイスの場合も基底クラスと見なす) 473 473 BOOL bThisIsSuperClass; 474 if( Smoothie::Temp::pCompilingClass->pobj_InheritsClass==0) bThisIsSuperClass=1;475 else if( Smoothie::Temp::pCompilingClass-> pobj_InheritsClass->GetConstructorMethod() == NULL ){474 if( !Smoothie::Temp::pCompilingClass->HasSuperClass() ) bThisIsSuperClass=1; 475 else if( Smoothie::Temp::pCompilingClass->GetSuperClass().GetConstructorMethod() == NULL ){ 476 476 //インターフェイスを継承したときはコンストラクタを持たない 477 477 bThisIsSuperClass=1; … … 492 492 temporary[i4]=basbuf[i3]; 493 493 } 494 if( Smoothie::Temp::pCompilingClass-> pobj_InheritsClass->GetName() == temporary ){494 if( Smoothie::Temp::pCompilingClass->GetSuperClass().GetName() == temporary ){ 495 495 //基底クラスのコンストラクタを呼び出す 496 496 cp=i3; … … 509 509 Type dummyType; 510 510 CallProc( PROC_DEFAULT 511 , Smoothie::Temp::pCompilingClass-> pobj_InheritsClass->GetConstructorMethod()->pUserProc512 , Smoothie::Temp::pCompilingClass-> pobj_InheritsClass->GetConstructorMethod()->pUserProc->GetName().c_str()511 , Smoothie::Temp::pCompilingClass->GetSuperClass().GetConstructorMethod()->pUserProc 512 , Smoothie::Temp::pCompilingClass->GetSuperClass().GetConstructorMethod()->pUserProc->GetName().c_str() 513 513 , temporary 514 514 , dummyType ); … … 517 517 //基底クラスのコンストラクタを暗黙的に呼び出す 518 518 Opcode_CallProc("", 519 Smoothie::Temp::pCompilingClass-> pobj_InheritsClass->GetConstructorMethod()->pUserProc,519 Smoothie::Temp::pCompilingClass->GetSuperClass().GetConstructorMethod()->pUserProc, 520 520 0, 521 521 "", … … 590 590 Smoothie::Temp::pCompilingClass->NotifyFinishDestructorCompile(); 591 591 592 if( Smoothie::Temp::pCompilingClass->pobj_InheritsClass){592 if( Smoothie::Temp::pCompilingClass->HasSuperClass() ){ 593 593 /* サブクラスのデストラクタをコンパイルしているときは、 594 594 基底クラスのデストラクタを呼び出す */ 595 595 596 const CMethod *method = Smoothie::Temp::pCompilingClass-> pobj_InheritsClass->GetDestructorMethod();596 const CMethod *method = Smoothie::Temp::pCompilingClass->GetSuperClass().GetDestructorMethod(); 597 597 if( method ){ 598 598 Opcode_CallProc("",
Note:
See TracChangeset
for help on using the changeset viewer.