Minorly improves InternalCompilerException preloading.

Review by: spoon


git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@7477 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/dev/core/src/com/google/gwt/dev/jjs/InternalCompilerException.java b/dev/core/src/com/google/gwt/dev/jjs/InternalCompilerException.java
index e97957b..5e36ba3 100644
--- a/dev/core/src/com/google/gwt/dev/jjs/InternalCompilerException.java
+++ b/dev/core/src/com/google/gwt/dev/jjs/InternalCompilerException.java
@@ -30,11 +30,15 @@
    */
   public static final class NodeInfo {
 
+    static void preload() {
+      // Initialize this class on static invocation.
+    }
+
     private final String className;
     private final String description;
     private final SourceInfo sourceInfo;
 
-    private NodeInfo(String className, String description, SourceInfo sourceInfo) {
+    NodeInfo(String className, String description, SourceInfo sourceInfo) {
       this.className = className;
       this.description = description;
       this.sourceInfo = sourceInfo;
@@ -73,7 +77,9 @@
    * memory or out of stack conditions.
    */
   public static void preload() {
-    // Nothing to do, JVM will initialize this class on static invocation.
+    // Initialize this class on static invocation.
+    NodeInfo.preload();
+    pendingICE.set(pendingICE.get());
   }
 
   private final List<NodeInfo> nodeTrace = new ArrayList<NodeInfo>();
diff --git a/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java b/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java
index 7eb3148..62327ac 100644
--- a/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java
+++ b/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java
@@ -213,6 +213,7 @@
   public static PermutationResult compilePermutation(TreeLogger logger,
       UnifiedAst unifiedAst, Permutation permutation)
       throws UnableToCompleteException {
+    InternalCompilerException.preload();
     PropertyOracle[] propertyOracles = permutation.getPropertyOracles();
     int permutationId = permutation.getId();
     Map<String, String> rebindAnswers = permutation.getRebindAnswers();