You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2016/03/28 08:18:31 UTC
git commit: [flex-falcon] [refs/heads/develop] - fix static function
initializers
Repository: flex-falcon
Updated Branches:
refs/heads/develop 20b3a66ad -> 74aebf34c
fix static function initializers
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/74aebf34
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/74aebf34
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/74aebf34
Branch: refs/heads/develop
Commit: 74aebf34c26d0fa6b1ef83b6bdf36b3b813932e6
Parents: 20b3a66
Author: Alex Harui <ah...@apache.org>
Authored: Sun Mar 27 23:18:14 2016 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Sun Mar 27 23:18:27 2016 -0700
----------------------------------------------------------------------
.../internal/codegen/js/flexjs/TestFlexJSFieldMembers.java | 9 +++++++++
.../internal/codegen/js/flexjs/JSFlexJSEmitter.java | 2 +-
2 files changed, 10 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/74aebf34/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSFieldMembers.java
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSFieldMembers.java b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSFieldMembers.java
index fb390ff..0859a7b 100644
--- a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSFieldMembers.java
+++ b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSFieldMembers.java
@@ -180,6 +180,15 @@ public class TestFlexJSFieldMembers extends TestGoogFieldMembers
assertOut("/**\n * @constructor\n */\nFalconTest_A = function() {\n\nthis.foo = parseFloat('1E2');\n};\n\n\n/**\n * @protected\n * @type {number}\n */\nFalconTest_A.prototype.foo;");
}
+ @Test
+ public void testStaticField_withFunctionInitializer()
+ {
+ IClassNode node = (IClassNode) getNode("private static var empty:Function = function():void {}",
+ IClassNode.class, WRAP_LEVEL_CLASS);
+ asBlockWalker.visitClass(node);
+ assertOut("/**\n * @constructor\n */\nFalconTest_A = function() {\n};\n\n\n/**\n * @private\n * @type {Function}\n */\nFalconTest_A.empty = function() {\n};");
+ }
+
@Override
@Test
public void testField_withList()
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/74aebf34/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
index c4c72da..92a722a 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
@@ -292,7 +292,7 @@ public class JSFlexJSEmitter extends JSGoogEmitter implements IJSFlexJSEmitter
public void emitFunctionObject(IFunctionObjectNode node)
{
IFunctionNode fnNode = (IFunctionNode)node.getAncestorOfType(IFunctionNode.class);
- if (fnNode.getEmittingLocalFunctions())
+ if (fnNode == null || fnNode.getEmittingLocalFunctions())
{
super.emitFunctionObject(node);
}