Project

Profile

Help

Bug #2218

ByteCode generation failure during compilation in 9.6

Added by Nick Nunes almost 5 years ago. Updated almost 4 years ago.

Status:
Closed
Priority:
Low
Category:
Byte code generation
Sprint/Milestone:
Start date:
2014-11-11
Due date:
% Done:

100%

Legacy ID:
Applies to branch:
9.6
Fix Committed on Branch:
9.6
Fixed in Maintenance Release:

Description

The attached stylesheet, when invoked with this command:

java -jar ~/Downloads/saxon9ee.jar -s:void.xml bug.saxon96.generatebytecode.xsl

fails during compilation with the following stack trace:

**** endMethod failed
Exception in thread "main" java.lang.AssertionError: The Label: returnNullItem has been used but not marked
    at com.saxonica.ee.bytecode.util.GeneratedMethodInfo.checkLabels(GeneratedMethodInfo.java:147)
    at com.saxonica.ee.bytecode.util.CompilerService.popCurrentMethodInfo(CompilerService.java:841)
    at com.saxonica.ee.bytecode.FilterExpressionCompiler.makeFilterIteratorClass(FilterExpressionCompiler.java:458)
    at com.saxonica.ee.bytecode.FilterExpressionCompiler.compileToIterator(FilterExpressionCompiler.java:369)
    at com.saxonica.ee.bytecode.util.CompilerService.compileToIterator(CompilerService.java:739)
    at com.saxonica.ee.bytecode.BlockCompiler$1.generateCase(BlockCompiler.java:222)
    at com.saxonica.objectweb.asm.commons.GeneratorAdapter.tableSwitch(Unknown Source)
    at com.saxonica.objectweb.asm.commons.GeneratorAdapter.tableSwitch(Unknown Source)
    at com.saxonica.ee.bytecode.BlockCompiler.makeNextMethod(BlockCompiler.java:277)
    at com.saxonica.ee.bytecode.BlockCompiler.generateBlockIterator(BlockCompiler.java:124)
    at com.saxonica.ee.bytecode.BlockCompiler.compileToIterator(BlockCompiler.java:86)
    at com.saxonica.ee.bytecode.util.CompilerService.compileToIterator(CompilerService.java:739)
    at com.saxonica.ee.bytecode.BlockCompiler$1.generateCase(BlockCompiler.java:222)
    at com.saxonica.objectweb.asm.commons.GeneratorAdapter.tableSwitch(Unknown Source)
    at com.saxonica.objectweb.asm.commons.GeneratorAdapter.tableSwitch(Unknown Source)
    at com.saxonica.ee.bytecode.BlockCompiler.makeNextMethod(BlockCompiler.java:277)
    at com.saxonica.ee.bytecode.BlockCompiler.generateBlockIterator(BlockCompiler.java:124)
    at com.saxonica.ee.bytecode.BlockCompiler.compileToIterator(BlockCompiler.java:86)
    at com.saxonica.ee.bytecode.util.CompilerService.compileToIterator(CompilerService.java:739)
    at com.saxonica.ee.bytecode.CardinalityCheckerCompiler.compileToIterator(CardinalityCheckerCompiler.java:126)
    at com.saxonica.ee.bytecode.util.CompilerService.compileToIterator(CompilerService.java:739)
    at com.saxonica.ee.bytecode.util.CompilerService.compileToByteCode(CompilerService.java:505)
    at com.saxonica.ee.bytecode.LetExpressionCompiler.makeClosure(LetExpressionCompiler.java:636)
    at com.saxonica.ee.bytecode.LetExpressionCompiler.compileCommonExpr(LetExpressionCompiler.java:177)
    at com.saxonica.ee.bytecode.ApplyTemplatesCompiler.compileParameterSet(ApplyTemplatesCompiler.java:144)
    at com.saxonica.ee.bytecode.CallTemplateCompiler.compileToPush(CallTemplateCompiler.java:70)
    at com.saxonica.ee.bytecode.util.CompilerService.compileToPush(CompilerService.java:752)
    at com.saxonica.ee.bytecode.BlockCompiler.compileToPush(BlockCompiler.java:41)
    at com.saxonica.ee.bytecode.util.CompilerService.compileToPush(CompilerService.java:752)
    at com.saxonica.ee.bytecode.CopyCompiler.compileCopyElement(CopyCompiler.java:493)
    at com.saxonica.ee.bytecode.CopyCompiler.compileToPush(CopyCompiler.java:76)
    at com.saxonica.ee.bytecode.util.CompilerService.compileToPush(CompilerService.java:752)
    at com.saxonica.ee.bytecode.util.CompilerService.compileToByteCode(CompilerService.java:638)
    at com.saxonica.ee.optim.OptimizerEE.compileToByteCode(OptimizerEE.java:1334)
    at net.sf.saxon.style.XSLTemplate.generateByteCode(XSLTemplate.java:666)
    at net.sf.saxon.style.StylesheetPackage.compile(StylesheetPackage.java:1191)
    at net.sf.saxon.style.Compilation.compilePackage(Compilation.java:201)
    at net.sf.saxon.style.Compilation.compileSingletonPackage(Compilation.java:94)
    at net.sf.saxon.s9api.XsltCompiler.compile(XsltCompiler.java:543)
    at net.sf.saxon.Transform.doTransform(Transform.java:601)
    at net.sf.saxon.Transform.main(Transform.java:80)

System:

Saxon-EE 9.6.0.1J from Saxonica

java version "1.6.0_65"

Mac OS X 10.10

bug.saxon96.generatebytecode.xsl (1.75 KB) Nick Nunes, 2014-11-12 02:43 bug.saxon96.generatebytecode.xsl
void.xml (51 Bytes) Nick Nunes, 2014-11-12 02:43 void.xml

Related issues

Related to Saxon - Bug #2173: NullPointerException after inlining variables Closed 2014-10-09 Actions
Copied to Saxon - Bug #2810: ByteCode generation failure during compilation in 9.7 Closed 2014-11-11 Actions

History

#1 Updated by O'Neil Delpratt almost 5 years ago

  • Category set to Byte code generation
  • Status changed from New to Resolved
  • Assignee set to O'Neil Delpratt
  • Found in version set to 9.6

Thanks for reporting the problem you have found. This bug has been fixed as part of the solution to the bug issue #2173.

#2 Updated by O'Neil Delpratt almost 5 years ago

  • Status changed from Resolved to Closed
  • % Done changed from 0 to 100
  • Fixed in version set to 9.6.0.2

Bug fix applied to the maintenance release Saxon 9.6.0.2

#3 Updated by O'Neil Delpratt almost 4 years ago

  • Sprint/Milestone set to 9.6.0.2
  • Applies to branch 9.6 added
  • Fix Committed on Branch 9.6 added
  • Fixed in Maintenance Release 9.6.0.2 added

#4 Updated by O'Neil Delpratt about 3 years ago

  • Copied to Bug #2810: ByteCode generation failure during compilation in 9.7 added

Please register to edit this issue

Also available in: Atom PDF