Author: [email protected]
Date: Fri Jun 5 07:10:36 2009
New Revision: 5512
Modified:
branches/snapshot-2009.06.02-r5498/branch-info.txt
branches/snapshot-2009.06.02-r5498/dev/core/src/com/google/gwt/dev/jjs/ast/JClassLiteral.java
Log:
Merge trunk r5510 into the 6/2 snapshot branch.
Fix incorrect AST generation when setting up calls to class literal factory
methods.
Patch by: bobv
Review by: scottb
svn merge --ignore-ancestry -c5510 \
https://google-web-toolkit.googlecode.com/svn/trunk .
Modified: branches/snapshot-2009.06.02-r5498/branch-info.txt
==============================================================================
--- branches/snapshot-2009.06.02-r5498/branch-info.txt (original)
+++ branches/snapshot-2009.06.02-r5498/branch-info.txt Fri Jun 5 07:10:36
2009
@@ -14,3 +14,5 @@
/trunk r5505-r5506 was merged into this branch
(CurrencyListGenerator nb locales)
svn merge --ignore-ancestry -r5504:5506
https://google-web-toolkit.googlecode.com/svn/trunk .
+/trunk r5510 was merged into this branch (Fix ICE)
+ svn merge --ignore-ancestry -c5510
https://google-web-toolkit.googlecode.com/svn/trunk .
Modified:
branches/snapshot-2009.06.02-r5498/dev/core/src/com/google/gwt/dev/jjs/ast/JClassLiteral.java
==============================================================================
---
branches/snapshot-2009.06.02-r5498/dev/core/src/com/google/gwt/dev/jjs/ast/JClassLiteral.java
(original)
+++
branches/snapshot-2009.06.02-r5498/dev/core/src/com/google/gwt/dev/jjs/ast/JClassLiteral.java
Fri Jun 5 07:10:36 2009
@@ -61,8 +61,8 @@
JDeclaredType arrayType = program.getIndexedType("Array");
call.addArg(new JNameOf(info, program, arrayType));
- } else if (type instanceof JDeclaredType) {
- // Add the name of the seed function for non-array reference types
+ } else if (type instanceof JClassType) {
+ // Add the name of the seed function for concrete types
call.addArg(new JNameOf(info, program, type));
} else if (type instanceof JPrimitiveType) {
@@ -118,6 +118,8 @@
} else {
assert (type instanceof JInterfaceType || type instanceof
JPrimitiveType);
}
+ assert call.getArgs().size() == method.getParams().size() : "Argument
/ param mismatch "
+ + call.toString() + " versus " + method.toString();
return call;
}
--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---