Fix non determinism in code generation.

GenerateJavaScriptAst.FixNameClashesVisitor fixes name clashes in
a non deterministic order due to iteration over a HashMultimap.

This fix makes the iteration order deterministic by using a
LinkHashMultimap instead.

Change-Id: Iaa878666f4fbae7cf235d3d53f223d8a08af6e4f
(cherry picked from commit d94b402596302381061b72698bc706257307a4e7)
diff --git a/dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java b/dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java
index 1481c39..698b6ab 100644
--- a/dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java
+++ b/dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java
@@ -165,7 +165,7 @@
 import com.google.gwt.dev.util.collect.Maps;
 import com.google.gwt.dev.util.collect.Lists;
 import com.google.gwt.dev.util.collect.Sets;
-import com.google.gwt.thirdparty.guava.common.collect.HashMultimap;
+import com.google.gwt.thirdparty.guava.common.collect.LinkedHashMultimap;
 import com.google.gwt.thirdparty.guava.common.collect.Multimap;
 
 import java.io.StringReader;
@@ -281,7 +281,7 @@
       // Start constructing the scope tree.
       currentScope = new Scope();
       scopesByLocal = new HashMap<JLocal, Scope>();
-      localsByName = HashMultimap.create();
+      localsByName = LinkedHashMultimap.create();
       return true;
     }