Changeset 75 in dev for BasicCompiler32/Compile_Set_Var.cpp
- Timestamp:
- Mar 20, 2007, 4:36:16 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
BasicCompiler32/Compile_Set_Var.cpp
r73 r75 7 7 } 8 8 9 void SetStructVariable( LONG_PTR lpVarIndex,int CalcType,LONG_PTR lpCalcIndex,BOOL bUseHeap){9 void SetStructVariable( const Type &varType, const Type &calcType, BOOL bUseHeap){ 10 10 /* 11 11 TODO: 消す … … 37 37 38 38 39 if( CalcType == DEF_STRUCT ){ 40 CClass *pVarClass = (CClass *)lpVarIndex; 41 CClass *pCalcClass = (CClass *)lpCalcIndex; 42 43 44 if( pVarClass->IsEquals( pCalcClass ) ){ //等しい 39 if( calcType.IsStruct() ){ 40 if( varType.GetClass().IsEquals( &calcType.GetClass() ) ){ //等しい 45 41 46 42 //双方のオブジェクト型が一致、または派生・継承関係にあるとき 47 43 //※コピーを行う 48 44 49 int object_size = pVarClass->GetSize();45 int object_size = varType.GetClass().GetSize(); 50 46 51 47 //mov ecx,object_size … … 71 67 72 68 //call free 73 extern SubInfo*pSub_free;69 extern UserProc *pSub_free; 74 70 op_call(pSub_free); 75 71 }
Note:
See TracChangeset
for help on using the changeset viewer.