src/share/classes/com/sun/tools/javac/code/Types.java

changeset 1434
34d1ebaf4645
parent 1430
4d68e2a05b50
child 1436
f6f1fd261f57
     1.1 --- a/src/share/classes/com/sun/tools/javac/code/Types.java	Fri Nov 30 15:14:12 2012 +0000
     1.2 +++ b/src/share/classes/com/sun/tools/javac/code/Types.java	Fri Nov 30 15:14:25 2012 +0000
     1.3 @@ -437,23 +437,8 @@
     1.4                  throw failure("not.a.functional.intf.1",
     1.5                              diags.fragment("no.abstracts", Kinds.kindName(origin), origin));
     1.6              } else if (abstracts.size() == 1) {
     1.7 -                if (abstracts.first().type.tag == FORALL) {
     1.8 -                    throw failure("invalid.generic.desc.in.functional.intf",
     1.9 -                            abstracts.first(),
    1.10 -                            Kinds.kindName(origin),
    1.11 -                            origin);
    1.12 -                } else {
    1.13 -                    return new FunctionDescriptor(abstracts.first());
    1.14 -                }
    1.15 +                return new FunctionDescriptor(abstracts.first());
    1.16              } else { // size > 1
    1.17 -                for (Symbol msym : abstracts) {
    1.18 -                    if (msym.type.tag == FORALL) {
    1.19 -                        throw failure("invalid.generic.desc.in.functional.intf",
    1.20 -                                abstracts.first(),
    1.21 -                                Kinds.kindName(origin),
    1.22 -                                origin);
    1.23 -                    }
    1.24 -                }
    1.25                  FunctionDescriptor descRes = mergeDescriptors(origin, abstracts.toList());
    1.26                  if (descRes == null) {
    1.27                      //we can get here if the functional interface is ill-formed

mercurial