Merge branch 'develop' of https://gitbox.apache.org/repos/asf/royale-compiler into develop
diff --git a/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/FunctionReference.java b/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/FunctionReference.java
index 6fd200a..8351dd1 100644
--- a/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/FunctionReference.java
+++ b/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/FunctionReference.java
@@ -130,7 +130,7 @@
 
         braces = " { " + returns + " }";
 
-        sb.append("    ");
+        sb.append(indent);
         sb.append(publicModifier);
         sb.append(staticValue);
         sb.append("function ");
diff --git a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/BinaryOperatorEmitter.java b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/BinaryOperatorEmitter.java
index 8d6c103..fee9757 100644
--- a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/BinaryOperatorEmitter.java
+++ b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/BinaryOperatorEmitter.java
@@ -23,7 +23,11 @@
 import org.apache.royale.compiler.codegen.js.IJSEmitter;
 import org.apache.royale.compiler.constants.IASLanguageConstants;
 import org.apache.royale.compiler.definitions.IDefinition;
+import org.apache.royale.compiler.definitions.IFunctionDefinition;
+import org.apache.royale.compiler.definitions.IFunctionDefinition.FunctionClassification;;
 import org.apache.royale.compiler.definitions.ITypeDefinition;
+import org.apache.royale.compiler.definitions.IVariableDefinition;
+import org.apache.royale.compiler.definitions.IVariableDefinition.VariableClassification;;
 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;
@@ -87,11 +91,44 @@
 
             IDefinition dnode = (node.getRightOperandNode())
                     .resolve(getProject());
-            if (dnode != null)
-                write(getEmitter()
-                        .formatQualifiedName(dnode.getQualifiedName()));
-            else
-                getWalker().walk(node.getRightOperandNode());
+			if (dnode != null)
+			{
+				String dnodeQname = dnode.getQualifiedName();
+                boolean isPackageOrFileMember = false;
+                if (dnode instanceof IVariableDefinition)
+                {
+                    IVariableDefinition variable = (IVariableDefinition) dnode;
+                    VariableClassification classification = variable.getVariableClassification();
+                    if (classification == VariableClassification.PACKAGE_MEMBER ||
+                            classification == VariableClassification.FILE_MEMBER)
+                    {
+                        isPackageOrFileMember = true;
+                    }
+                }
+                else if (dnode instanceof IFunctionDefinition)
+                {
+                    IFunctionDefinition func = (IFunctionDefinition) dnode;
+                    FunctionClassification classification = func.getFunctionClassification();
+                    if (classification == FunctionClassification.PACKAGE_MEMBER ||
+                            classification == FunctionClassification.FILE_MEMBER)
+                    {
+                        isPackageOrFileMember = true;
+                    }
+                }
+				else if(dnode instanceof ITypeDefinition)
+				{
+					isPackageOrFileMember = true;
+				}
+				if(isPackageOrFileMember)
+				{
+					dnodeQname = getEmitter().formatQualifiedName(dnodeQname);
+				}
+                write(dnodeQname);
+			}
+			else
+			{
+				getWalker().walk(node.getRightOperandNode());
+			}
         }
         else
         {
diff --git a/compiler/src/main/java/org/apache/royale/compiler/internal/css/CSSProperty.java b/compiler/src/main/java/org/apache/royale/compiler/internal/css/CSSProperty.java
index 9b3ddf1..0f4c0a2 100644
--- a/compiler/src/main/java/org/apache/royale/compiler/internal/css/CSSProperty.java
+++ b/compiler/src/main/java/org/apache/royale/compiler/internal/css/CSSProperty.java
@@ -57,7 +57,7 @@
     @Override
     public String toString()
     {
-        if (rawName.equalsIgnoreCase("border"))
+        if (rawName.equalsIgnoreCase("border") && value instanceof CSSArrayPropertyValue)
         {
             CSSArrayPropertyValue borderValues = (CSSArrayPropertyValue)value;
             return String.format("%s: %s;", rawName, Joiner.on(" ").join(borderValues.getElements()));
diff --git a/compiler/src/main/java/org/apache/royale/compiler/internal/units/SWCCompilationUnit.java b/compiler/src/main/java/org/apache/royale/compiler/internal/units/SWCCompilationUnit.java
index 2d50445..cb09a07 100644
--- a/compiler/src/main/java/org/apache/royale/compiler/internal/units/SWCCompilationUnit.java
+++ b/compiler/src/main/java/org/apache/royale/compiler/internal/units/SWCCompilationUnit.java
@@ -410,6 +410,11 @@
     {
         return swc.isANE();
     }
+
+    public ISWC getSWC()
+    {
+        return swc;
+    }
     
     @Override
     public String getName()