tree 0f1494fea2b0b0403dc5b95fd459cde7551022e5
parent e370043cf55e8230c283128533111512e9b01196
author Henry Zongaro <zongaro@apache.org> 1145461011 +0000
committer Henry Zongaro <zongaro@apache.org> 1145461011 +0000

Part of patch for XALANJ-1324 and others.

References to serializer methods in byte code generated for xsl:message were
using virtual method invocation on ToXMLStream.  This causes problems for
method outlining, as the variable involved is marked as being of type
SerializationHandler.  If this part of a method is outlined, the value will
be copied into the outlined method as a SerializationHandler, and the JVM's byte
code verifier will report an VerifyError for the references to the virtual
methods on ToXMLStream.

Replaced virtual method references on ToXMLStream with equivalent interface
method references on SerializationHandler.  Though the performance could be
slightly worse, performance is probably not of great importance for xsl:message.

See org.apache.xalan.xsltc.compiler.util.MethodGenerator.outlineChunks for more
information.

Patch reviewed by Christine Li and Erin Harris.

