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

javac requires exponential time to attribute methods in a large hierarchy

    Details

    • Subcomponent:
    • Resolved In Build:
      04
    • CPU:
      generic, x86
    • OS:
      solaris_8, windows_2000

      Backports

        Description

        For large inheritance hierarchies, javac appears to require something like
        exponential time to compile. This isn't exactly a bug in the sense of
        incorrect behavior, but it isn't very nice either. On the other hand,
        fixing this may well make the common case more expensive.

        interface A {
            void f();
        }
        interface B extends A {
            void f();
        }
        interface C extends A, B {}
        interface D extends B, C {}
        interface E extends C, D {}
        interface F extends D, E {}
        interface G extends E, F {}
        interface H extends F, G {}
        interface I extends G, H {}
        interface J extends H, I {}
        interface K extends I, J {}
        interface L extends J, K {}
        interface M extends K, L {}
        interface N extends L, M {}
        interface O extends M, N {}
        interface P extends N, O {}
        interface Q extends O, P {}
        interface R extends P, Q {}
        interface S extends Q, R {}
        class T {
            void f(S o) {
                o.f();
            }
        }

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  gafter Neal Gafter
                  Reporter:
                  gafter Neal Gafter
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  0 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:
                    Imported:
                    Indexed: