1.1 --- a/src/share/classes/com/sun/tools/javac/comp/Lower.java Thu Jul 24 19:06:57 2008 +0100 1.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Lower.java Fri Jul 25 12:05:43 2008 +0100 1.3 @@ -2944,8 +2944,10 @@ 1.4 itvar.type, 1.5 List.<Type>nil()); 1.6 JCExpression vardefinit = make.App(make.Select(make.Ident(itvar), next)); 1.7 - if (iteratorTarget != syms.objectType) 1.8 - vardefinit = make.TypeCast(iteratorTarget, vardefinit); 1.9 + if (tree.var.type.isPrimitive()) 1.10 + vardefinit = make.TypeCast(types.upperBound(iteratorTarget), vardefinit); 1.11 + else 1.12 + vardefinit = make.TypeCast(tree.var.type, vardefinit); 1.13 JCVariableDecl indexDef = (JCVariableDecl)make.VarDef(tree.var.mods, 1.14 tree.var.name, 1.15 tree.var.vartype,