소스 검색

Fixed index cast to int

Brian Fiete 4 년 전
부모
커밋
8f59a9dc0a
1개의 변경된 파일3개의 추가작업 그리고 2개의 파일을 삭제
  1. 3 2
      IDEHelper/Compiler/BfExprEvaluator.cpp

+ 3 - 2
IDEHelper/Compiler/BfExprEvaluator.cpp

@@ -18079,8 +18079,9 @@ void BfExprEvaluator::Visit(BfIndexerExpression* indexerExpr)
 		}
 		else
 		{
-			mModule->Fail("Expected integer index", indexerExpr->mArguments[0]);
-			indexArgument = mModule->GetDefaultTypedValue(mModule->GetPrimitiveType(BfTypeCode_IntPtr));
+			indexArgument = mModule->Cast(indexerExpr->mArguments[0], indexArgument, mModule->GetPrimitiveType(BfTypeCode_IntPtr));
+			if (!indexArgument)			
+				indexArgument = mModule->GetDefaultTypedValue(mModule->GetPrimitiveType(BfTypeCode_IntPtr));
 		}
 	}