Changeset 59 in dev for BasicCompiler_Common
- Timestamp:
- Feb 21, 2007, 1:50:32 AM (18 years ago)
- Location:
- BasicCompiler_Common
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
BasicCompiler_Common/Class.cpp
r57 r59 540 540 } 541 541 return false; 542 } 543 544 //自身と等しいまたは派生クラスかどうかを確認 545 bool CClass::IsEqualsOrSubClass( CClass *pClass ){ 546 if( IsEquals( pClass ) ) return true; 547 return IsSubClass( pClass ); 542 548 } 543 549 -
BasicCompiler_Common/Class.h
r56 r59 170 170 bool IsSubClass( CClass *pClass ); 171 171 172 //自身と等しいまたは派生クラスかどうかを確認 173 bool IsEqualsOrSubClass( CClass *pClass ); 174 172 175 173 176 //線形リスト用 -
BasicCompiler_Common/error.cpp
r46 r59 399 399 400 400 if(VarType==DEF_OBJECT||CalcType==DEF_OBJECT){ 401 //オブジェクトインスタンスの場合 402 if(!(VarType==CalcType&&lpVarIndex==lpCalcIndex)){ 401 //いずれかがオブジェクトインスタンスの場合 402 if( VarType != CalcType ){ 403 DifferentTypeError(VarType,lpVarIndex,CalcType,lpCalcIndex,3,pszFuncName,ParmNum); 404 return false; 405 } 406 407 CClass *pClass = (CClass *)lpVarIndex; 408 if( !pClass->IsEqualsOrSubClass( (CClass *)lpCalcIndex ) ){ 409 //等しくなく、派生クラスでもないとき 403 410 DifferentTypeError(VarType,lpVarIndex,CalcType,lpCalcIndex,3,pszFuncName,ParmNum); 404 411 return false;
Note:
See TracChangeset
for help on using the changeset viewer.