Ignore:
Timestamp:
Mar 20, 2007, 4:36:16 AM (17 years ago)
Author:
dai_9181
Message:

TYPEINFO→Typeへのリファクタリングを実施。64bitはほぼ完了。32bitが全般的に未完成。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BasicCompiler32/Compile_Set_Var.cpp

    r73 r75  
    77}
    88
    9 void SetStructVariable(LONG_PTR lpVarIndex,int CalcType,LONG_PTR lpCalcIndex,BOOL bUseHeap){
     9void SetStructVariable( const Type &varType, const Type &calcType, BOOL bUseHeap){
    1010/*
    1111    TODO: 消す
     
    3737
    3838
    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() ) ){          //等しい
    4541
    4642                //双方のオブジェクト型が一致、または派生・継承関係にあるとき
    4743                //※コピーを行う
    4844
    49                 int object_size = pVarClass->GetSize();
     45                int object_size = varType.GetClass().GetSize();
    5046
    5147                //mov ecx,object_size
     
    7167
    7268                    //call free
    73                     extern SubInfo *pSub_free;
     69                    extern UserProc *pSub_free;
    7470                    op_call(pSub_free);
    7571                }
Note: See TracChangeset for help on using the changeset viewer.