Browse Source

Fix: OP_SELF

AnnulusGames 1 year ago
parent
commit
95485a2e83

+ 1 - 1
src/Lua/CodeAnalysis/Compilation/LuaCompiler.cs

@@ -396,7 +396,7 @@ public sealed class LuaCompiler : ISyntaxNodeVisitor<ScopeCompilationContext, bo
             b = 0;
             b = 0;
         }
         }
 
 
-        CompileExpressionList(node, node.ArgumentNodes, b - 1, context);
+        CompileExpressionList(node, node.ArgumentNodes, b - 2, context);
 
 
         // push call interuction
         // push call interuction
         if (isTailCall)
         if (isTailCall)

+ 1 - 0
src/Lua/Runtime/LuaVirtualMachine.cs

@@ -948,6 +948,7 @@ public static partial class LuaVirtualMachine
                     Thread = thread,
                     Thread = thread,
                     ArgumentCount = 2,
                     ArgumentCount = 2,
                     SourcePosition = chunk.SourcePositions[pc],
                     SourcePosition = chunk.SourcePositions[pc],
+                    FrameBase = stack.Count - 2,
                 }, methodBuffer, cancellationToken);
                 }, methodBuffer, cancellationToken);
 
 
                 return methodBuffer[0];
                 return methodBuffer[0];