Reviewers: fabbott,
Description:
Fix some bugs in symbol dumping.
1) Fixes an NPE when dumping symbols with -validateOnly.
2) Fixes unstable sort order being returned from TypeOracle.getTypes().
Review by: fabb...@google.com
Please review this at http://gwt-code-reviews.appspot.com/685801/show
Affected files:
M dev/core/src/com/google/gwt/core/ext/typeinfo/TypeOracle.java
M dev/core/src/com/google/gwt/dev/Precompile.java
Index: dev/core/src/com/google/gwt/core/ext/typeinfo/TypeOracle.java
===================================================================
--- dev/core/src/com/google/gwt/core/ext/typeinfo/TypeOracle.java (revision
8376)
+++ dev/core/src/com/google/gwt/core/ext/typeinfo/TypeOracle.java (working
copy)
@@ -584,7 +584,14 @@
*/
public JClassType[] getTypes() {
Collection<JRealClassType> values = allTypes.values();
- return values.toArray(new JClassType[values.size()]);
+ JClassType[] result = values.toArray(new JClassType[values.size()]);
+ Arrays.sort(result, new Comparator<JClassType>() {
+ public int compare(JClassType o1, JClassType o2) {
+ return o1.getQualifiedSourceName().compareTo(
+ o2.getQualifiedSourceName());
+ }
+ });
+ return result;
}
public JWildcardType getWildcardType(JWildcardType.BoundType boundType,
@@ -617,7 +624,7 @@
* of the preceding.
* <p>
* Examples of types that can be parsed by this method.
- * <ul>
+ *
<ul>third_party/java_src/gwt/svn/trunk/dev/core/src/com/google/gwt/core/ext/typeinfo/TypeOracle.java
* <li><code>int</code></li>
* <li><code>java.lang.Object</code></li>
* <li><code>java.lang.String[]</code></li>
Index: dev/core/src/com/google/gwt/dev/Precompile.java
===================================================================
--- dev/core/src/com/google/gwt/dev/Precompile.java (revision 8376)
+++ dev/core/src/com/google/gwt/dev/Precompile.java (working copy)
@@ -472,11 +472,6 @@
module.getActiveLinkerNames()), genDir);
// Allow GC later.
compilationState = null;
- if (dumpSignatureFile != null) {
- // Dump early to avoid generated types.
- SignatureDumper.dumpSignatures(logger,
- compilationState.getTypeOracle(), dumpSignatureFile);
- }
// Never optimize on a validation run.
jjsOptions.setOptimizePrecompile(false);
getCompiler(module).precompile(logger, module, rpo, declEntryPts,
--
http://groups.google.com/group/Google-Web-Toolkit-Contributors