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

    r46 r50  
    101101        //左辺の型にのっとり、オーバーロードを解決
    102102
    103         SUBINFO **ppsi;
    104         int num;
    105         ppsi=GetOverloadSubHash( name, &num );
    106         if(!num){
    107             HeapDefaultFree(ppsi);
    108 
     103        std::vector<SUBINFO *> subs;
     104        GetOverloadSubHash( name, subs );
     105        if( subs.size() == 0 ){
    109106            SetError(27,name,cp);
    110107            return;
     
    113110        //オーバーロードを解決
    114111        extern PROCPTRINFO *pProcPtrInfo;
    115         psi=OverloadSolution(name,ppsi,num,pProcPtrInfo[ProcPtr_BaseIndex].pParmInfo,pProcPtrInfo[ProcPtr_BaseIndex].ParmNum,NULL);
    116         HeapDefaultFree(ppsi);
     112        psi=OverloadSolution(name,subs,pProcPtrInfo[ProcPtr_BaseIndex].pParmInfo,pProcPtrInfo[ProcPtr_BaseIndex].ParmNum,NULL);
    117113
    118114        if(!psi){
Note: See TracChangeset for help on using the changeset viewer.