You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -982,6 +1002,10 @@ function Compiler:compileFunction(node, funcDepth)
982
1002
self.activeBlock.advanceToNextBlock=false;
983
1003
end
984
1004
1005
+
if(self.varargReg) then
1006
+
self:freeRegister(self.varargReg, true);
1007
+
end
1008
+
self.varargReg=upperVarargReg;
985
1009
self.getUpvalueId=oldGetUpvalueId;
986
1010
987
1011
self:popRegisterUsageInfo();
@@ -1029,7 +1053,7 @@ function Compiler:compileStatement(statement, funcDepth)
1029
1053
localregs= {};
1030
1054
1031
1055
fori, exprinipairs(statement.args) do
1032
-
ifi==#statement.argsand (expr.kind==AstKind.FunctionCallExpressionorexpr.kind==AstKind.PassSelfFunctionCallExpression) then
1056
+
ifi==#statement.argsand (expr.kind==AstKind.FunctionCallExpressionorexpr.kind==AstKind.PassSelfFunctionCallExpressionorexpr.kind==AstKind.VarargExpression) then
@@ -1107,7 +1131,7 @@ function Compiler:compileStatement(statement, funcDepth)
1107
1131
localargs= {};
1108
1132
1109
1133
fori, exprinipairs(statement.args) do
1110
-
ifi==#statement.argsand (expr.kind==AstKind.FunctionCallExpressionorexpr.kind==AstKind.PassSelfFunctionCallExpression) then
1134
+
ifi==#statement.argsand (expr.kind==AstKind.FunctionCallExpressionorexpr.kind==AstKind.PassSelfFunctionCallExpressionorexpr.kind==AstKind.VarargExpression) then
@@ -1138,7 +1162,7 @@ function Compiler:compileStatement(statement, funcDepth)
1138
1162
localregs= { baseReg };
1139
1163
1140
1164
fori, exprinipairs(statement.args) do
1141
-
ifi==#statement.argsand (expr.kind==AstKind.FunctionCallExpressionorexpr.kind==AstKind.PassSelfFunctionCallExpression) then
1165
+
ifi==#statement.argsand (expr.kind==AstKind.FunctionCallExpressionorexpr.kind==AstKind.PassSelfFunctionCallExpressionorexpr.kind==AstKind.VarargExpression) then
@@ -1803,7 +1827,7 @@ function Compiler:compileExpression(expression, funcDepth, numReturns)
1803
1827
localregs= { baseReg };
1804
1828
1805
1829
fori, exprinipairs(expression.args) do
1806
-
ifi==#expression.argsand (expr.kind==AstKind.FunctionCallExpressionorexpr.kind==AstKind.PassSelfFunctionCallExpression) then
1830
+
ifi==#expression.argsand (expr.kind==AstKind.FunctionCallExpressionorexpr.kind==AstKind.PassSelfFunctionCallExpressionorexpr.kind==AstKind.VarargExpression) then
0 commit comments