You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2002/04/08 23:31:59 UTC

DO NOT REPLY [Bug 7854] New: - xsltc error on conf test match29

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7854>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7854

xsltc error on conf test match29

           Summary: xsltc error on conf test match29
           Product: XalanJ2
           Version: CurrentCVS
          Platform: Other
        OS/Version: Other
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: org.apache.xalan.xsltc
        AssignedTo: xalan-dev@xml.apache.org
        ReportedBy: tom.amiro@sun.com


Running XSLTC with Xerces Parser on match29
Exception in thread "main" java.lang.VerifyError: (class: match29, method:
applyTemplates2 signature:
(Lorg/apache/xalan/xsltc/DOM;Lorg/apache/xalan/xsltc/NodeIterator;Lorg/apache/xalan/xsltc/TransletOutputHandler;)V)
Unable to pop operand off an empty stack
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:120)
        at
org.apache.xalan.xsltc.cmdline.Transform.loadTranslet(Transform.java:134)
        at
org.apache.xalan.xsltc.cmdline.Transform.doTransform(Transform.java:148)
        at org.apache.xalan.xsltc.cmdline.Transform.main(Transform.java:329)

Saxon and Xalan have no problem.
Running saxon on match29
<?xml version="1.0" encoding="UTF-8"?><out>
<foundX level="4"/><foundX level="6"/>
<found-X level="4"/><found-X level="6"/></out>

Running xalan on match29
<?xml version="1.0" encoding="UTF-8"?>
<out>
<foundX level="4"/><foundX level="6"/>
<found-X level="4"/><found-X level="6"/></out>

xsl file
========
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">


  <!-- FileName: match29 -->
  <!-- Document: http://www.w3.org/TR/xslt -->
  <!-- DocVersion: 19991116 -->
  <!-- Section: 5.2 -->
  <!-- Creator: David Marston, from an idea by Holger Floerke -->
  <!-- Purpose: // at start of match pattern should not affect selection of
nodes. -->

<xsl:output method="xml" encoding="UTF-8" />

<xsl:template match="/">
  <out>
    <xsl:text>&#10;</xsl:text>
    <xsl:apply-templates select="//X" mode="unprefixed" />
    <xsl:text>&#10;</xsl:text>
    <xsl:apply-templates select="//X" mode="prefixed" />
  </out>
</xsl:template>

<xsl:template match="B//X" mode="unprefixed">
  <foundX><xsl:copy-of select="@level"/></foundX>
</xsl:template>

<xsl:template match="//B//X" mode="prefixed">
  <found-X><xsl:copy-of select="@level"/></found-X>
</xsl:template>

<xsl:template match="X" mode="unprefixed" priority="0">
  <!-- Suppress other X nodes -->
</xsl:template>

<xsl:template match="X" mode="prefixed" priority="0">
  <!-- Suppress other X nodes -->
</xsl:template>

</xsl:stylesheet>

xml file
========
<?xml version="1.0"?>
<A level="1">
  <X level="2">
     <B level="3">
        <X level="4">
          <C level="5">
            <X level="6"/>
          </C>
        </X>
     </B>
  </X>
</A>