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 2013/10/25 00:51:04 UTC

[4/5] git commit: [flex-falcon] [refs/heads/develop] - Allow namespace access (mx_internal::foo) to be compiled even if the object doesn't have that property, since it could be on an interface

Allow namespace access (mx_internal::foo) to be compiled even if the object doesn't have that property, since it could be on an interface


Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/ba7fef9e
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/ba7fef9e
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/ba7fef9e

Branch: refs/heads/develop
Commit: ba7fef9e3f998104ac043c6ede0ef2c2eefae778
Parents: 90e86c2
Author: Alex Harui <ah...@apache.org>
Authored: Thu Oct 24 15:38:27 2013 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Thu Oct 24 15:38:27 2013 -0700

----------------------------------------------------------------------
 .../compiler/internal/semantics/MethodBodySemanticChecker.java  | 5 +++++
 1 file changed, 5 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/ba7fef9e/compiler/src/org/apache/flex/compiler/internal/semantics/MethodBodySemanticChecker.java
----------------------------------------------------------------------
diff --git a/compiler/src/org/apache/flex/compiler/internal/semantics/MethodBodySemanticChecker.java b/compiler/src/org/apache/flex/compiler/internal/semantics/MethodBodySemanticChecker.java
index 4b4fe28..6a96d09 100644
--- a/compiler/src/org/apache/flex/compiler/internal/semantics/MethodBodySemanticChecker.java
+++ b/compiler/src/org/apache/flex/compiler/internal/semantics/MethodBodySemanticChecker.java
@@ -117,6 +117,7 @@ import org.apache.flex.compiler.internal.tree.as.LiteralNode;
 import org.apache.flex.compiler.internal.tree.as.MemberAccessExpressionNode;
 import org.apache.flex.compiler.internal.tree.as.ModifierNode;
 import org.apache.flex.compiler.internal.tree.as.ModifiersContainerNode;
+import org.apache.flex.compiler.internal.tree.as.NamespaceAccessExpressionNode;
 import org.apache.flex.compiler.internal.tree.as.NamespaceNode;
 import org.apache.flex.compiler.internal.tree.as.NodeBase;
 import org.apache.flex.compiler.internal.tree.as.NumericLiteralNode;
@@ -1865,6 +1866,10 @@ public class MethodBodySemanticChecker
 
         if ( def == null && utils.definitionCanBeAnalyzed(member) )
         {
+            // if it is foo.mx_internal::someProp, just say it passes
+            if (member_node.getParent() instanceof NamespaceAccessExpressionNode)
+                return;
+            
             if ( utils.isInaccessible(iNode, member) )
             {
                 addProblem(new InaccessiblePropertyReferenceProblem(