瀏覽代碼

Fix for `var`-typed case capture

Brian Fiete 4 年之前
父節點
當前提交
4322c984cc
共有 1 個文件被更改,包括 1 次插入1 次删除
  1. 1 1
      IDEHelper/Compiler/BfStmtEvaluator.cpp

+ 1 - 1
IDEHelper/Compiler/BfStmtEvaluator.cpp

@@ -1943,7 +1943,7 @@ BfLocalVariable* BfModule::HandleVariableDeclaration(BfVariableDeclaration* varD
 	if ((!localDef->mIsReadOnly) || (mHasFullDebugInfo) || (forceAddr))
 	if ((!localDef->mIsReadOnly) || (mHasFullDebugInfo) || (forceAddr))
 	{
 	{
 		localDef->mAddr = AllocLocalVariable(localDef->mResolvedType, localDef->mName);		
 		localDef->mAddr = AllocLocalVariable(localDef->mResolvedType, localDef->mName);		
-		if ((val.mValue) && (!localDef->mResolvedType->IsValuelessType()))
+		if ((val.mValue) && (!localDef->mResolvedType->IsValuelessType()) && (!localDef->mResolvedType->IsVar()))
 		{
 		{
 			if (val.IsSplat())
 			if (val.IsSplat())
 				AggregateSplatIntoAddr(val, localDef->mAddr);
 				AggregateSplatIntoAddr(val, localDef->mAddr);