Commit Graph
49 Commits
Author SHA1 Message Date
Anna Kozlova 8b16402ca3 overload resolution: proceed with additional constraints when qualifier type is calculated (IDEA-151409) 2016-02-19 19:18:43 +01:00
Anna Kozlova 779d43a6df testdata for IDEA-151823 2016-02-19 19:18:43 +01:00
Anna Kozlova a6625994fb overload resolution: don't skip errors from another context (IDEA-151119) 2016-02-02 14:38:40 +03:00
Anna Kozlova a035c14d75 overload resolution: don't include constraints on functional expressions into applicability check during overload resolution (IDEA-150745) 2016-01-26 17:30:03 +03:00
Anna Kozlova a166bd1059 overload resolution: infer most specific agains formal param types substituted against site substitutor, including param bounds (IDEA-150773) 2016-01-25 18:52:15 +03:00
Anna Kozlova 883f7f3f39 overload resolution: apply site substitution before potential compatibility check (IDEA-150807) 2016-01-25 18:52:15 +03:00
Anna Kozlova a3c0c965fb inference incorporate optimization: avoid eq bounds propagation (IDEA-149952; IDEA-144822) 2016-01-19 20:46:08 +01:00
Anna Kozlova 3baa03058b overload resolution: ensure all list of parameters is checked during most specific check of varargs methods (IDEA-150224) 2016-01-11 16:36:11 +01:00
Anna Kozlova d9aeacbf48 overload resolution: don't prefer generic to raw substitution (IDEA-149289) 2015-12-28 10:27:00 +01:00
Anna Kozlova c81d887251 ensure potential compatible for pertinent to applicability: when number of parameters is wrong methods which are not potentially compatible are not filtered (IDEA-149103) 2015-12-09 19:28:03 +01:00
Anna Kozlova b580d8eccb AIOOBE 2015-12-03 19:11:09 +01:00
Anna Kozlova e8111b751e new overload resolution: don't treat array type of functional interfaces as functional interface (IDEA-148726) 2015-12-02 17:56:08 +01:00
Anna Kozlova 878ac5560e overload resolution: boxing should ignore null types (IDEA-148692) 2015-11-30 19:45:19 +01:00
Dmitry Batrak b1f6d9b57f deprecate legacy scaling in performance tests 2015-11-30 11:58:49 +03:00
Anna Kozlova 169b42916e new inference: don't treat void as primitive type to boxing 2015-11-25 12:25:02 +01:00
Anna Kozlova d13663483d overload resolution: choose one of overload equivalent abstract methods arbitrarily (IDEA-146261) 2015-10-12 20:15:40 +02:00
Anna Kozlova c000624704 overload resolution: treat default methods as abstract; don't include static interface methods in conflict resolution when target expression type does not correspond to the containing interface (IDEA-146055) 2015-10-07 19:36:05 +02:00
Anna Kozlova 197110ff95 overload resolution: provide type parameter bounds with site substitutor to correctly compare types during most specific check (IDEA-144463) 2015-10-02 12:05:27 +02:00
Anna Kozlova c111105d30 cache diamond inference results 2015-09-30 10:59:13 +02:00
Anna Kozlova 7d92ec966f new overload resolution: reject candidates with applicability level less than asked (IDEA-145505) 2015-09-24 19:58:55 +03:00
Anna Kozlova 962225c53e isApplicable for raw qualifiers: it's enough to erasure left type, then right type should be able to assign there, so method reference type/lambda type won't be lost during erasure (IDEA-144547) 2015-09-04 14:10:35 +03:00
Anna Kozlova 5f45a046ea testdata for IDEA-106848 2015-09-03 20:30:59 +03:00
Anna Kozlova a1601f1d22 deoptimize so overriding methods from object marked as abstract won't get lost (IDEA-143141) 2015-08-18 12:34:42 +02:00
Anna Kozlova 303edac35e functional type erasure: check if resulted type functional (IDEA-142341) 2015-07-07 14:55:14 +03:00
Anna Kozlova 7f0692d0f2 lambda valueCompatible check: don't evaluate constant expressions which could lead to reference resolution during overload check = caching possible wrong refs (IDEA-141808) 2015-06-24 11:11:03 +03:00
Anna Kozlova fc175ce1a8 overload resolution: compare functional interfaces for specific if they are not assignable (IDEA-140987) 2015-06-02 17:58:59 +02:00
Anna Kozlova a21990d31e overload resolution with varargs: don't prefer promitive varargs when no arg is provided (IDEA-140759) 2015-05-27 22:01:03 +02:00
Anna Kozlova 4f0f3ff7fc new inference: include additional constraints to check applicability (IDEA-140355) 2015-05-19 11:07:45 +02:00
Anna Kozlova 84a06d86a9 testdata for IDEA-139875 2015-05-04 15:01:34 +02:00
Anna Kozlova 4ee27fecce can complete normally for nested try-with-resources (IDEA-138961) 2015-04-09 17:02:25 +02:00
Anna Kozlova 822934d37a new overload resolution: do not accept primitive type as target of second search (IDEA-138839) 2015-04-08 12:05:58 +02:00
Anna Kozlova 858119b775 new overload resolution: remember candidate when argument type is to be calculated (IDEA-137921) 2015-03-20 20:08:50 +01:00
Anna Kozlova 1b7e4859be overload resolution: reject methods with wrong number of parameters even if vararg method is present (IDEA-131093) 2015-02-27 12:55:15 +01:00
Anna Kozlova 895b40432c lambda: can complete normally: skip empty finally blocks at lambda body end (IDEA-136628; IDEA-135791) 2015-02-17 19:56:04 +01:00
Anna Kozlova a6ef814ce8 java 8 interfaces: default/static preferences (IDEA-136171) 2015-02-10 17:55:56 +01:00
Anna Kozlova 27e575b967 overload resolution for exact method references: ensure param types are equal in case non-generic methods 2015-02-01 16:30:45 +03:00
Anna Kozlova 867a714293 overload resolution for explicitly typed lambda: poly wins over primitive 2015-02-01 16:07:03 +03:00
Anna Kozlova dbdc890cd1 lambda expression isCongruent: ensure target function type has no type parameters 2015-02-01 12:54:19 +03:00
Anna Kozlova 012e57d2ea lambda isValueCompatible check: ensure throws is not treated as normal completion (IDEA-135581) 2015-01-26 20:19:16 +03:00
Anna Kozlova 658607d9c2 new overload resolution: reject complete normally when last instruction is return (IDEA-134808) 2014-12-29 18:57:39 +01:00
Anna Kozlova 0be4af00e0 new overload resolution: block can complete normally if the last statement could throw exception (IDEA-134103) 2014-12-17 20:51:47 +01:00
Anna Kozlova a026cc2dd1 new overload resolution: check only functional arguments in isFunctionalTypeMoreSpecific (IDEA-134328) 2014-12-17 20:13:42 +01:00
Anna Kozlova 2ecc4272ac merge unused declaration and unused symbol inspections 2014-10-14 10:24:58 +02:00
Anna Kozlova bcdb87573e new inference: do not cache control flow during conflict resolution (IDEA-130226) 2014-10-07 18:25:03 +02:00
Anna Kozlova aedcba169d do not drill inside lambda body during return statement search (IDEA-130123) 2014-09-29 14:08:36 +02:00
Anna Kozlova 29e00ab329 testdata for IDEA-102800 2014-09-08 15:37:38 +04:00
Anna Kozlova 99862079db fix compilation 2014-09-03 16:57:31 +04:00
Anna Kozlova 9097465506 new overload resolution: void value compatibility to reject improperly shaped implicitly typed lambdas 2014-09-03 16:54:34 +04:00
Anna Kozlova 5fc5b2b300 new overload resolution: reject explicitly typed lambda to be pertinent to applicability if any of its return expressions is not 2014-09-03 16:54:33 +04:00