Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4496633

javadoc crashes on attempting to recover from cyclic inheritance error.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P3 P3
    • None
    • 1.4.0
    • tools
    • None

      Consider the following case.
      -----------------------------

      jtools-sqe:/home/vr128054/vertest/work 428 % more s.java
      public class s extends t
      {
      }

      public class t extends x
      {
      }

      public class x extends s
      {
      }

      the javadoc crashes with an exception.
      --------------------------------------

      jtools-sqe:/home/vr128054/vertest/work 430 % javadoc s.java
      Loading source file s.java...
      Constructing Javadoc information...
      s.java:5: class t is public, should be declared in a file named t.java
      public class t extends x
             ^
      s.java:9: class x is public, should be declared in a file named x.java
      public class x extends s
             ^
      s.java:9: cyclic inheritance involving s
      public class x extends s
                             ^
      Standard Doclet version 1.4 beta (04 Aug 2001)

      Building tree for all the packages and classes...
      javadoc: In doclet class com.sun.tools.doclets.standard.Standard, method start has thrown an exception java.lang.reflect.InvocationTargetException
      java.lang.ClassCastException: com.sun.tools.javac.v8.code.Type$ErrorType
              at com.sun.tools.javadoc.ClassDocImpl.<init>(ClassDocImpl.java:111)
              at com.sun.tools.javadoc.ClassDocImpl.<init>(ClassDocImpl.java:134)
              at com.sun.tools.javadoc.DocEnv.getClassDoc(DocEnv.java:388)
              at com.sun.tools.javadoc.ClassDocImpl.superclass(ClassDocImpl.java:353)
              at com.sun.tools.doclets.ClassTree.processClass(ClassTree.java:139)
              at com.sun.tools.doclets.ClassTree.processClass(ClassTree.java:144)
              at com.sun.tools.doclets.ClassTree.processClass(ClassTree.java:144)
              at com.sun.tools.doclets.ClassTree.buildTree(ClassTree.java:108)
              at com.sun.tools.doclets.ClassTree.<init>(ClassTree.java:67)
              at com.sun.tools.doclets.standard.Standard.startGeneration(Standard.java:105)
              at com.sun.tools.doclets.standard.Standard.start(Standard.java:45)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:42)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:28)
              at java.lang.reflect.Method.invoke(Method.java:313)
              at com.sun.tools.javadoc.DocletInvoker.invoke(DocletInvoker.java:196)
              at com.sun.tools.javadoc.DocletInvoker.start(DocletInvoker.java:95)
              at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:289)
              at com.sun.tools.javadoc.Start.begin(Start.java:114)
              at com.sun.tools.javadoc.Main.execute(Main.java:44)
              at com.sun.tools.javadoc.Main.main(Main.java:34)
      1 error
      3 warnings


            gafter Neal Gafter (Inactive)
            rvijayansunw Ra Vijayan (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: