Ignore:
Timestamp:
Jan 22, 2007, 11:38:19 PM (17 years ago)
Author:
dai_9181
Message:

戻り値に基本型を持つインデクサ(Getter)が正常に呼び出せないバグを修正。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BasicCompiler_Common/NumOpe_GetType.cpp

    r35 r38  
    409409                    }
    410410
     411
     412                    //インデクサ(getアクセサ)
     413                    char VarName[VN_SIZE],ArrayElements[VN_SIZE];
     414                    GetArrayElement(values[i],VarName,ArrayElements);
     415                    if(ArrayElements[0]){
     416                        CClass *pobj_c;
     417                        i2=GetVarType(VarName,(LONG_PTR *)&pobj_c,0);
     418                        if(i2==DEF_OBJECT){
     419                            TYPEINFO RetTypeInfo;
     420                            if( !GetReturnTypeOfIndexerGetterProc(pobj_c,RetTypeInfo) ){
     421                                SetError(1,NULL,cp);
     422                                goto error;
     423                            }
     424                            type[sp]=RetTypeInfo.type;
     425                            index_stack[sp]=RetTypeInfo.u.lpIndex;
     426                            bLiteralCalculation=0;
     427
     428                            sp++;
     429                            break;
     430                        }
     431                    }
     432
     433
    411434                    i2=GetVarType(values[i],&index_stack[sp],0);
    412435                    if(i2!=-1){
     
    472495
    473496                    //配列要素を排除
    474                     char VarName[VN_SIZE],ArrayElements[VN_SIZE];
    475497                    GetArrayElement(values[i],VarName,ArrayElements);
    476498
Note: See TracChangeset for help on using the changeset viewer.