Removed spurious warnings due to STOB taking more speculative paths than it did previously.

Review by: spoon (desk check)

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@2862 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/user/rebind/rpc/SerializableTypeOracleBuilder.java b/user/src/com/google/gwt/user/rebind/rpc/SerializableTypeOracleBuilder.java
index 71310d4..93ac23a 100644
--- a/user/src/com/google/gwt/user/rebind/rpc/SerializableTypeOracleBuilder.java
+++ b/user/src/com/google/gwt/user/rebind/rpc/SerializableTypeOracleBuilder.java
@@ -912,10 +912,7 @@
 
               if (typeParamsInQueryType.isEmpty()) {
                 if (!isParameterized.isAssignableFrom(subtype)) {
-                  // Only emit a warning if the supertype is not instantiable.
-                  Type logLevel = isInstantiable ? TreeLogger.DEBUG
-                      : getLogLevel(true);
-                  subtypeLogger.log(logLevel, "Excluding type '"
+                  subtypeLogger.log(TreeLogger.DEBUG, "Excluding type '"
                       + subtype.getParameterizedQualifiedSourceName()
                       + "' because it is not assignable to '"
                       + isParameterized.getParameterizedQualifiedSourceName()
@@ -1294,9 +1291,16 @@
         return false;
       }
 
+      /*
+       * Speculative paths log at DEBUG level, non-speculative ones log at WARN
+       * level.
+       */
+      TreeLogger.Type logLevel = isSpeculative ? TreeLogger.DEBUG
+          : TreeLogger.WARN;
+
       if (type.isLocalType()) {
         logger.branch(
-            getLogLevel(isSpeculative),
+            logLevel,
             type.getParameterizedQualifiedSourceName()
                 + " is a local type; it will be excluded from the set of serializable types",
             null);
@@ -1305,7 +1309,7 @@
 
       if (type.isMemberType() && !type.isStatic()) {
         logger.branch(
-            getLogLevel(isSpeculative),
+            logLevel,
             type.getParameterizedQualifiedSourceName()
                 + " is nested but not static; it will be excluded from the set of serializable types",
             null);
@@ -1320,7 +1324,7 @@
       if (!type.isDefaultInstantiable()) {
         // Warn and return false.
         logger.log(
-            TreeLogger.WARN,
+            logLevel,
             "Was not default instantiable (it must have a zero-argument constructor or no constructors at all)",
             null);
         return false;