Uploaded image for project: 'Code Tools'
  1. Code Tools
  2. CODETOOLS-6882591

In some cases sigtest fails in debug mode when running with -ea

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P2 P2
    • st2.2
    • st2.2
    • tools
    • b06
    • b06
    • generic
    • generic
    • Verified

      There are two attached java source classes that cause the Signature test tool to fail when the tool is running in debug mode and enabled Java assertions (with -ea VM option).

      Steps to reproduce:

      1. Compile a source file:

      <ag153348@zenit> mkdir classes
      <ag153348@zenit> javac -d classes clss44701.java

      2. Run the signature setup as follows:

      <ag153348@zenit> java -version
      java version "1.6.0"
      Java(TM) SE Runtime Environment (build 1.6.0-b105)
      Java HotSpot(TM) Server VM (build 1.6.0-b105, mixed mode)
      <ag153348@zenit> which java
      /set/java/re/jdk/6.0/latest/binaries/solaris-amd64/bin/java
      <ag153348@zenit> java -ea -cp /set/java/re/sigtest/2.2/snapshot/fcs/latest/binaries/sigtest-2.2/lib/sigtestdev.jar com.sun.tdk.signaturetest.Setup -classpath /set/java/re/jdk/7/latest/binaries/solaris-i586/jre/lib/rt.jar:classes/ -package javasoft -filename data.sig
      Class path: "/set/java/re/jdk/7/latest/binaries/solaris-i586/jre/lib/rt.jar:classes/"
      Constant checking: on
      Found in total: 18352 classes
      Selected by -Package: 2 classes
      Written to sigfile: 2 classes
      STATUS:Passed.
      <ag153348@zenit> java -ea -cp /set/java/re/sigtest/2.2/snapshot/fcs/latest/binaries/sigtest-2.2/lib/sigtestdev.jar com.sun.tdk.signaturetest.Setup -classpath /set/java/re/jdk/7/latest/binaries/solaris-i586/jre/lib/rt.jar:classes/ -package javasoft -filename data.sig -debug
      Class path: "/set/java/re/jdk/7/latest/binaries/solaris-i586/jre/lib/rt.jar:classes/"
      Constant checking: on
      Found in total: 18352 classes
      Synthetic method boolean java.lang.Class.access$100(java.lang.Object[],java.lang.Object[]) skipped
      Synthetic method boolean java.lang.Class.access$202(boolean) skipped
      Synthetic method boolean java.lang.Class.access$302(boolean) skipped
      Bridge method int java.lang.String.compareTo(java.lang.Object) skipped
      Exception in thread "main" java.lang.AssertionError
      at com.sun.tdk.signaturetest.core.Erasurator.processMember(Erasurator.java:235)
      at com.sun.tdk.signaturetest.core.Erasurator.processMember(Erasurator.java:202)
      at com.sun.tdk.signaturetest.core.MethodOverridingChecker.addMethod(MemberCollectionBuilder.java:691)
      at com.sun.tdk.signaturetest.core.MethodOverridingChecker.addMethods(MemberCollectionBuilder.java:706)
      at com.sun.tdk.signaturetest.core.MemberCollectionBuilder.getMembers(MemberCollectionBuilder.java:270)
      at com.sun.tdk.signaturetest.core.MemberCollectionBuilder.getMembers(MemberCollectionBuilder.java:231)
      at com.sun.tdk.signaturetest.core.MemberCollectionBuilder.createMembers(MemberCollectionBuilder.java:106)
      at com.sun.tdk.signaturetest.Setup.create(Setup.java:473)
      at com.sun.tdk.signaturetest.Setup.run(Setup.java:163)
      at com.sun.tdk.signaturetest.Setup.main(Setup.java:142)


      Note if the debug option is not specified, the assertion exception will not be thrown.

            ersh Mikhail Ershov (Inactive)
            agavrilosunw Alexey Gavrilov (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: