              n, alias, rvalue,
              varNode, varParent.getChildBefore(varNode), varParent);
 -      }
--
+ 
 -      addStubsForUndeclaredProperties(n, alias, varParent, varNode);
      }
++      addStubsForUndeclaredProperties(n, alias, varParent, varNode);
  
--    if (insertedVarNode) {
-+    addStubsForUndeclaredProperties(n, alias, varParent, varNode);
+     if (insertedVarNode) {
        if (!varNode.hasChildren()) {
-         varParent.removeChild(varNode);
--      }
--      compiler.reportCodeChange();
-     }
-+
-+    compiler.reportCodeChange();
-   }
- 
-   /**
-@@ -700,12 +684,7 @@ class CollapseProperties implements CompilerPass {
+@@ -700,11 +696,7 @@ class CollapseProperties implements CompilerPass {
     *
     * @param n An object representing a global name (e.g. "a")
     */

diff --git a/src/com/google/javascript/jscomp/CollapseProperties.java b/src/com/google/javascript/jscomp/CollapseProperties.java
index abe01595..b5083826 100644
--- a/src/com/google/javascript/jscomp/CollapseProperties.java
+++ b/src/com/google/javascript/jscomp/CollapseProperties.java
@@ -452,8 +452,8 @@ class CollapseProperties implements CompilerPass {

-    if (!canCollapseChildNames) {
-      return;
-    }
+  private void updateFunctionDeclarationAtFunctionNode(Name n) {
 
     Ref ref = n.declaration;
     String fnName = ref.node.getString();
