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

Uncompilable large expressions involving generics.

    Details

    • Subcomponent:
    • Resolved In Build:
      b94
    • CPU:
      x86
    • OS:
      os_x
    • Verification:
      Verified

      Description

      FULL PRODUCT VERSION :
      java version "1.8.0_05"
      Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
      Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

      ADDITIONAL OS VERSION INFORMATION :
      Darwin Kernel Version 13.2.0: Thu Apr 17 23:03:13 PDT 2014; root:xnu-2422.100.13~1/RELEASE_X86_64 x86_64

      A DESCRIPTION OF THE PROBLEM :
      I have defined a Predicate<T> interface and a (static method) operator "and" with signature:
      public static <T> Predicate<T> and(final Predicate<? super T> first, final Predicate<? super T> second)
      which returns a new Predicate<T> that combines the given ones (first and second).

      Consider a predicate:
      Predicate<Integer> even = new Predicate<Integer>() { ... };

      If a source file contains the expression "and(even, and(even, even));" there is no problem. However, if the expression becomes very big, i.e. deep, the javac compiler (with "-source 1.8" option) is unable to compile such big expressions whereas previous versions (or now if set to "-source 1.7" option) could.

      Here, unable to compile means that compilation either does not seem to terminate at all (waiting forever for it to end) or it causes a StackOverflow Exception to be thrown. I cannot determine what causes which case, nor can I reproduce specific cases, i.e. sometimes compilation terminates with an exception, sometimes it does not terminate at all.

      I assume it has to do with the improved type inference, though I have not looked into the details yet.

      I have not extensively tested at what depth it starts to become an issue. I have been using this sort of code for DSLs embedded as somewhat large expressions. Currently it is not common for snippets of the considered DSLs to become this large but it is in my opinion not inconceivable.

      Furthermore, without knowing the actual cause of the issue it might be affecting similar situations even with smaller expressions.

      REGRESSION. Last worked in version 7u60

      ADDITIONAL REGRESSION INFORMATION:
      java version "1.8.0_05"
      Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
      Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Create a class or interface with a type parameter and create an operator method taking instances of such class and returning one.

      Write a deeply nested compound expression (such as and(ev, and(ev, and(ev, ... {nested to a depth of more than at least 240 times} )))

      Compile the program.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      I expect the program to compile or at least provide clear compile error feedback.
      ACTUAL -
      Etiehr:
      - Compiler does not terminate (at all!)
      - StackOverflow exception.

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      Either:
      - None (nontermination)
      - The following (very long!!):


      The system is out of resources.
      Consult the following stack trace for details.
      java.lang.StackOverflowError
      at com.sun.tools.javac.code.Type$ClassType.map(Type.java:896)
      at com.sun.tools.javac.code.Type$UndetVar$1.apply(Type.java:1548)
      at com.sun.tools.javac.code.Type$UndetVar.addBound(Type.java:1530)
      at com.sun.tools.javac.code.Type$UndetVar.addBound(Type.java:1526)
      at com.sun.tools.javac.code.Types$6.visitUndetVar(Types.java:961)
      at com.sun.tools.javac.code.Types$6.visitUndetVar(Types.java:840)
      at com.sun.tools.javac.code.Type$UndetVar.accept(Type.java:1470)
      at com.sun.tools.javac.code.Types$DefaultTypeVisitor.visit(Types.java:4400)
      at com.sun.tools.javac.code.Types.isSubtype(Types.java:836)
      at com.sun.tools.javac.code.Types.isSubtypeNoCapture(Types.java:809)
      at com.sun.tools.javac.code.Types$9.visitWildcardType(Types.java:1403)
      at com.sun.tools.javac.code.Types$9.visitWildcardType(Types.java:1350)
      at com.sun.tools.javac.code.Type$WildcardType.accept(Type.java:600)
      at com.sun.tools.javac.code.Types$DefaultTypeVisitor.visit(Types.java:4400)
      at com.sun.tools.javac.code.Types.containsType(Types.java:1347)
      at com.sun.tools.javac.code.Types.containsType(Types.java:1314)
      at com.sun.tools.javac.code.Types$6.containsTypeRecursive(Types.java:873)
      at com.sun.tools.javac.code.Types$6.visitClassType(Types.java:926)
      at com.sun.tools.javac.code.Types$6.visitClassType(Types.java:840)
      at com.sun.tools.javac.code.Type$ClassType.accept(Type.java:763)
      at com.sun.tools.javac.code.Types$DefaultTypeVisitor.visit(Types.java:4400)
      at com.sun.tools.javac.code.Types.isSubtype(Types.java:836)
      at com.sun.tools.javac.code.Types.isSubtype(Types.java:806)
      at com.sun.tools.javac.code.Types.isSubtypeUncheckedInternal(Types.java:759)
      at com.sun.tools.javac.code.Types.isSubtypeUnchecked(Types.java:743)
      at com.sun.tools.javac.comp.Resolve$MethodCheckContext.compatible(Resolve.java:941)
      at com.sun.tools.javac.comp.Check.checkType(Check.java:539)
      at com.sun.tools.javac.comp.Attr$ResultInfo.check(Attr.java:510)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:978)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.checkMethod(Resolve.java:603)
      at com.sun.tools.javac.comp.Attr.checkMethod(Attr.java:3777)
      at com.sun.tools.javac.comp.Attr.checkIdInternal(Attr.java:3583)
      at com.sun.tools.javac.comp.Attr.checkMethodIdInternal(Attr.java:3494)
      at com.sun.tools.javac.comp.Attr.checkMethodId(Attr.java:3469)
      at com.sun.tools.javac.comp.Attr.checkId(Attr.java:3456)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3213)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:270)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.checkMethod(Resolve.java:603)
      at com.sun.tools.javac.comp.Attr.checkMethod(Attr.java:3777)
      at com.sun.tools.javac.comp.Attr.checkIdInternal(Attr.java:3583)
      at com.sun.tools.javac.comp.Attr.checkMethodIdInternal(Attr.java:3490)
      at com.sun.tools.javac.comp.Attr.checkMethodId(Attr.java:3469)
      at com.sun.tools.javac.comp.Attr.checkId(Attr.java:3456)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3213)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:270)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.checkMethod(Resolve.java:603)
      at com.sun.tools.javac.comp.Attr.checkMethod(Attr.java:3777)
      at com.sun.tools.javac.comp.Attr.checkIdInternal(Attr.java:3583)
      at com.sun.tools.javac.comp.Attr.checkMethodIdInternal(Attr.java:3490)
      at com.sun.tools.javac.comp.Attr.checkMethodId(Attr.java:3469)
      at com.sun.tools.javac.comp.Attr.checkId(Attr.java:3456)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3213)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:270)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.checkMethod(Resolve.java:603)
      at com.sun.tools.javac.comp.Attr.checkMethod(Attr.java:3777)
      at com.sun.tools.javac.comp.Attr.checkIdInternal(Attr.java:3583)
      at com.sun.tools.javac.comp.Attr.checkMethodIdInternal(Attr.java:3490)
      at com.sun.tools.javac.comp.Attr.checkMethodId(Attr.java:3469)
      at com.sun.tools.javac.comp.Attr.checkId(Attr.java:3456)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3213)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:270)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.checkMethod(Resolve.java:603)
      at com.sun.tools.javac.comp.Attr.checkMethod(Attr.java:3777)
      at com.sun.tools.javac.comp.Attr.checkIdInternal(Attr.java:3583)
      at com.sun.tools.javac.comp.Attr.checkMethodIdInternal(Attr.java:3490)
      at com.sun.tools.javac.comp.Attr.checkMethodId(Attr.java:3469)
      at com.sun.tools.javac.comp.Attr.checkId(Attr.java:3456)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3213)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:270)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.checkMethod(Resolve.java:603)
      at com.sun.tools.javac.comp.Attr.checkMethod(Attr.java:3777)
      at com.sun.tools.javac.comp.Attr.checkIdInternal(Attr.java:3583)
      at com.sun.tools.javac.comp.Attr.checkMethodIdInternal(Attr.java:3490)
      at com.sun.tools.javac.comp.Attr.checkMethodId(Attr.java:3469)
      at com.sun.tools.javac.comp.Attr.checkId(Attr.java:3456)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3213)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:270)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.checkMethod(Resolve.java:603)
      at com.sun.tools.javac.comp.Attr.checkMethod(Attr.java:3777)
      at com.sun.tools.javac.comp.Attr.checkIdInternal(Attr.java:3583)
      at com.sun.tools.javac.comp.Attr.checkMethodIdInternal(Attr.java:3490)
      at com.sun.tools.javac.comp.Attr.checkMethodId(Attr.java:3469)
      at com.sun.tools.javac.comp.Attr.checkId(Attr.java:3456)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3213)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:270)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.checkMethod(Resolve.java:603)
      at com.sun.tools.javac.comp.Attr.checkMethod(Attr.java:3777)
      at com.sun.tools.javac.comp.Attr.checkIdInternal(Attr.java:3583)
      at com.sun.tools.javac.comp.Attr.checkMethodIdInternal(Attr.java:3490)
      at com.sun.tools.javac.comp.Attr.checkMethodId(Attr.java:3469)
      at com.sun.tools.javac.comp.Attr.checkId(Attr.java:3456)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3213)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:218)
      at com.sun.tools.javac.comp.Resolve$MethodResultInfo.check(Resolve.java:976)
      at com.sun.tools.javac.comp.Resolve$4.checkArg(Resolve.java:822)
      at com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.argumentsAcceptable(Resolve.java:733)
      at com.sun.tools.javac.comp.Resolve$4.argumentsAcceptable(Resolve.java:831)
      at com.sun.tools.javac.comp.Infer.instantiateMethod(Infer.java:162)
      at com.sun.tools.javac.comp.Resolve.rawInstantiate(Resolve.java:566)
      at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1418)
      at com.sun.tools.javac.comp.Resolve.findFun(Resolve.java:1834)
      at com.sun.tools.javac.comp.Resolve$8.doLookup(Resolve.java:2365)
      at com.sun.tools.javac.comp.Resolve$BasicLookupHelper.lookup(Resolve.java:3056)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3307)
      at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3292)
      at com.sun.tools.javac.comp.Resolve.resolveMethod(Resolve.java:2361)
      at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:3151)
      at com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:2005)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1828)
      at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1459)
      at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:596)
      at com.sun.tools.javac.comp.DeferredAttr.attribSpeculative(DeferredAttr.java:372)
      at com.sun.tools.javac.comp.DeferredAttr$2.complete(DeferredAttr.java:265)
      at com.sun.tools.javac.comp.DeferredAttr$DeferredType.check(DeferredAttr.java:231)



      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------
      interface Predicate<T> {
      public boolean apply(T t);
      public boolean equals(Object o);
      }

      public class Test {
      public static <T> Predicate<T> and(final Predicate<? super T> first, final Predicate<? super T> second) {
      return new Predicate<T>() {
      public boolean apply(T t) {
      return first.apply(t) && second.apply(t);
      }
      };
      }

      public static void main(String[] args) {
      Predicate<Integer> even = new Predicate<Integer>() {
      public boolean apply(Integer i) {
      return i % 2 == 0;
      }
      };

      and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, and(even, even)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
      }
      }
      ---------- END SOURCE ----------

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                vromero Vicente Arturo Romero Zaldivar
                Reporter:
                webbuggrp Webbug Group
              • Votes:
                0 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: