This is an automated email from the ASF dual-hosted git repository.

joshtynjala pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-compiler.git

commit a5f549f577eb3e20b229c56995fb275cc18f5918
Author: Josh Tynjala <[email protected]>
AuthorDate: Fri Jun 5 16:34:31 2026 -0700

    MemberAccessEmitter: don't include closure() around package-level functions 
(just non-static members)
---
 .../royale/compiler/internal/codegen/js/jx/MemberAccessEmitter.java     | 2 ++
 1 file changed, 2 insertions(+)

diff --git 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/MemberAccessEmitter.java
 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/MemberAccessEmitter.java
index 20e285532..5191a587a 100644
--- 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/MemberAccessEmitter.java
+++ 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/MemberAccessEmitter.java
@@ -26,6 +26,7 @@ import 
org.apache.royale.compiler.constants.IASKeywordConstants;
 import org.apache.royale.compiler.constants.IASLanguageConstants;
 import org.apache.royale.compiler.constants.INamespaceConstants;
 import org.apache.royale.compiler.definitions.*;
+import 
org.apache.royale.compiler.definitions.IFunctionDefinition.FunctionClassification;
 import org.apache.royale.compiler.internal.codegen.as.ASEmitterTokens;
 import org.apache.royale.compiler.internal.codegen.js.JSEmitterTokens;
 import org.apache.royale.compiler.internal.codegen.js.JSSubEmitter;
@@ -189,6 +190,7 @@ public class MemberAccessEmitter extends JSSubEmitter 
implements
                                // we need a closure if this MAE is the 
top-level in a chain
                                // of MAE and not in a function call.
                                needClosure = !isStatic && parentNodeId != 
ASTNodeID.FunctionCallID &&
+                                                       ((IFunctionDefinition) 
def).getFunctionClassification() == FunctionClassification.CLASS_MEMBER &&
                                                        parentNodeId != 
ASTNodeID.MemberAccessExpressionID &&
                                                        parentNodeId != 
ASTNodeID.ArrayIndexExpressionID;
 

Reply via email to