786 && types.isSameType(c.type, syms.deprecatedType)) |
786 && types.isSameType(c.type, syms.deprecatedType)) |
787 s.flags_field |= Flags.DEPRECATED; |
787 s.flags_field |= Flags.DEPRECATED; |
788 // Internally to java.lang.invoke, a @PolymorphicSignature annotation |
788 // Internally to java.lang.invoke, a @PolymorphicSignature annotation |
789 // acts like a classfile attribute. |
789 // acts like a classfile attribute. |
790 if (!c.type.isErroneous() && |
790 if (!c.type.isErroneous() && |
791 (types.isSameType(c.type, syms.polymorphicSignatureType) || |
791 types.isSameType(c.type, syms.polymorphicSignatureType)) { |
792 types.isSameType(c.type, syms.transientPolymorphicSignatureType))) { |
|
793 if (!target.hasMethodHandles()) { |
792 if (!target.hasMethodHandles()) { |
794 // Somebody is compiling JDK7 source code to a JDK6 target. |
793 // Somebody is compiling JDK7 source code to a JDK6 target. |
795 // Make it an error, since it is unlikely but important. |
794 // Make it an error, since it is unlikely but important. |
796 log.error(env.tree.pos(), |
795 log.error(env.tree.pos(), |
797 "wrong.target.for.polymorphic.signature.definition", |
796 "wrong.target.for.polymorphic.signature.definition", |