Changeset 50 in dev for BasicCompiler32/Compile_Func.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
  • BasicCompiler32/Compile_Func.cpp

    r46 r50  
    249249        //左辺の型にのっとり、オーバーロードを解決
    250250
    251         SUBINFO **ppsi;
    252         int num;
    253         ppsi=GetOverloadSubHash(name,&num);
    254         if(!num){
    255             HeapDefaultFree(ppsi);
    256 
     251        std::vector<SUBINFO *> subs;
     252        GetOverloadSubHash( name, subs );
     253        if( subs.size() == 0 ){
    257254            SetError(27,name,cp);
    258255            return;
     
    261258        //オーバーロードを解決
    262259        extern PROCPTRINFO *pProcPtrInfo;
    263         psi=OverloadSolution(name,ppsi,num,pProcPtrInfo[ProcPtr_BaseIndex].pParmInfo,pProcPtrInfo[ProcPtr_BaseIndex].ParmNum,NULL);
    264         HeapDefaultFree(ppsi);
     260        psi=OverloadSolution(name,subs,pProcPtrInfo[ProcPtr_BaseIndex].pParmInfo,pProcPtrInfo[ProcPtr_BaseIndex].ParmNum,NULL);
    265261
    266262        if(!psi){
Note: See TracChangeset for help on using the changeset viewer.