santiagopg 2002/07/30 11:30:29 Modified: java/src/org/apache/xalan/xsltc/compiler FunctionCall.java java/src/org/apache/xalan/xsltc/compiler/util ReferenceType.java ResultTreeType.java Log: Added type promotion from result-tree to object (used in call to nodeset()). Revision Changes Path 1.21 +2 -1 xml-xalan/java/src/org/apache/xalan/xsltc/compiler/FunctionCall.java Index: FunctionCall.java =================================================================== RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/compiler/FunctionCall.java,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- FunctionCall.java 25 Jul 2002 11:44:19 -0000 1.20 +++ FunctionCall.java 30 Jul 2002 18:30:28 -0000 1.21 @@ -175,6 +175,7 @@ _internal2Java.put(Type.ResultTree, nodeClass); _internal2Java.put(Type.ResultTree, nodeListClass); + _internal2Java.put(Type.ResultTree, objectClass); _internal2Java.put(Type.Reference, objectClass); 1.11 +2 -3 xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util/ReferenceType.java Index: ReferenceType.java =================================================================== RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util/ReferenceType.java,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- ReferenceType.java 25 Jul 2002 11:45:28 -0000 1.10 +++ ReferenceType.java 30 Jul 2002 18:30:28 -0000 1.11 @@ -230,7 +230,6 @@ il.append(new INVOKESTATIC(index)); } - /** * Subsume reference into ObjectType. * @@ -238,7 +237,7 @@ */ public void translateTo(ClassGenerator classGen, MethodGenerator methodGen, ObjectType type) { - methodGen.getInstructionList().append(NOP); + methodGen.getInstructionList().append(NOP); } /** 1.11 +18 -1 xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util/ResultTreeType.java Index: ResultTreeType.java =================================================================== RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util/ResultTreeType.java,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- ResultTreeType.java 1 Feb 2002 20:08:11 -0000 1.10 +++ ResultTreeType.java 30 Jul 2002 18:30:29 -0000 1.11 @@ -134,6 +134,9 @@ else if (type == Type.Reference) { translateTo(classGen, methodGen, (ReferenceType)type); } + else if (type == Type.Object) { + translateTo(classGen, methodGen, (ObjectType) type); + } else { ErrorMsg err = new ErrorMsg(ErrorMsg.DATA_CONVERSION_ERR, toString(), type.toString()); @@ -368,6 +371,16 @@ } /** + * Subsume result tree into ObjectType. + * + * @see org.apache.xalan.xsltc.compiler.util.Type#translateTo + */ + public void translateTo(ClassGenerator classGen, MethodGenerator methodGen, + ObjectType type) { + methodGen.getInstructionList().append(NOP); + } + + /** * Translates a result tree into a non-synthesized boolean. * It does not push a 0 or a 1 but instead returns branchhandle list * to be appended to the false list. @@ -417,7 +430,11 @@ MAKE_NODE_LIST_SIG2); il.append(new INVOKEINTERFACE(index, 2)); } + else if (className.equals("java.lang.Object")) { + il.append(NOP); + } else { +System.out.println("ResultTreeType.translateTo()"); ErrorMsg err = new ErrorMsg(ErrorMsg.DATA_CONVERSION_ERR, toString(), className); classGen.getParser().reportError(Constants.FATAL, err);
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]