Changeset 50 in dev for BasicCompiler64/Compile_Object.cpp


Ignore:
Timestamp:
Feb 10, 2007, 5:44:58 PM (18 years ago)
Author:
dai_9181
Message:

オーバーロード解決用の関数保持リストを "SUBINFO " ではなく、"vector<SUBINFO *>" に変更した。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BasicCompiler64/Compile_Object.cpp

    r31 r50  
    22#include "opcode.h"
    33
    4 void CallConstructor(CClass *pobj_c,char *CreateParameter,int ObjectSize,BOOL bSomeObjects){
     4void _call_constructor(CClass *pobj_c,char *CreateParameter,int ObjectSize,BOOL bSomeObjects){
    55    ////////////////////////////
    66    // コンストラクタの呼び出し
     
    3232    ////////////////////////
    3333
    34     SUBINFO **ppsi;
     34    std::vector<SUBINFO *> subs;
     35    pobj_c->EnumMethod( pobj_c->name, subs );
     36
    3537    SUBINFO *psi;
    36     int num;
    37     ppsi=GetOverloadObjectSubHash(pobj_c->name,pobj_c,&num);
    38     if(num){
     38    if( subs.size() > 0 ){
    3939        //オーバーロードを解決
    4040        psi=OverloadSolutionWithStrParam(pobj_c->name,
    41             ppsi,num,CreateParameter,"",NULL);
    42         HeapDefaultFree(ppsi);
     41            subs,CreateParameter,"",NULL);
    4342
    4443        if(!psi) return;
     
    227226    ////////////////////////////
    228227
    229     CallConstructor(pobj_c,CreateParameter,TypeSize,bSomeObjects);
     228    _call_constructor(pobj_c,CreateParameter,TypeSize,bSomeObjects);
    230229
    231230
Note: See TracChangeset for help on using the changeset viewer.