Anna Kozlova
a530fe132f
inference: don't erase inference variables (IDEA-151750)
2016-02-16 15:57:18 +01:00
Anna Kozlova
1f640238e0
inference: retrieve type from containing call if the corresponding method is not generics (IDEA-151443)
2016-02-09 20:09:10 +01:00
Anna Kozlova
ff21fd0ea5
calculate transitive inference variable's dependencies (IDEA-151170)
2016-02-03 16:10:26 +03:00
Anna Kozlova
c06f66ab26
SOE with numeric conditional expressions when expression inside is not standalone
...
EA-78419 - SOE: InferenceSessionContainer.infer
2016-01-27 13:57:06 +03:00
Anna Kozlova
7b2e554b0a
inference: cache erasure flag together with partial inference (IDEA-150802)
2016-01-25 18:52:15 +03:00
Anna Kozlova
15f3eac8a2
inference:incorporation optimization: skip variable's bound incorporation if the phase didn't change these bounds
2016-01-19 12:56:50 +01:00
Anna Kozlova
ae64c30eb9
inference: ensure to convert disjunction type to lub (IDEA-150364)
2016-01-14 16:18:20 +01:00
Anna Kozlova
46ce9ed914
testdata for IDEA-149774
2015-12-28 19:07:22 +01:00
Anna Kozlova
adaa0f09b7
new inference: pull erased flag through nested calls (IDEA-133613)
2015-12-28 19:07:22 +01:00
Anna Kozlova
2be1c64a13
new inference: correct capture incorporation (IDEA-149807)
2015-12-28 19:07:22 +01:00
Anna Kozlova
a15905ae13
conditional expression type: check poly expression first (IDEA-148965)
2015-12-08 09:37:18 +01:00
Anna Kozlova
5dad1d7009
new inference: process captured wildcard with array type bound
2015-12-02 10:57:27 +01:00
Anna Kozlova
621795bbee
isApplicability check based on pertinentToApplicability
2015-11-30 15:11:41 +01:00
Anna Kozlova
e43fad4277
captured wildcards: don't open unpredictably, treat as type, not type argument (IDEA-148348)
2015-11-26 19:23:09 +01:00
Anna Kozlova
49dfdded70
new inference: don't push resolved vars in case of failed substitution
2015-11-24 10:30:21 +01:00
Anna Kozlova
d32e6ec080
new inference: start inference from top to bottom; ensure getTargetType doesn't perform any inference; cache intermediate results
2015-11-19 10:47:21 +01:00
Anna Kozlova
fcf8e6f373
move inference error from element to method candidate to avoid overload method pollution; show inference error in the editor if applicability check was successful; register inference error if variable has incompatible upper bounds (IDEA-145106)
2015-11-16 10:05:50 +01:00
Anna Kozlova
03d4334430
eliminate wildcards elimination in flattening intersection types (IDEA-143194); fully follow specification in determining target type - javac would be fixed (JDK-8142876), eclipse already obeys the spec
2015-11-12 20:14:15 +01:00
Anna Kozlova
59b55c3c00
new inference, incorporation step: ignore type arguments in bounds, retrieve upper bounds of captured wildcards (IDEA-145244)
2015-11-11 17:35:32 +01:00
Anna Kozlova
99338ada50
incorporation: deal with PsiType.NULL (IDEA-147529)
2015-11-10 18:45:36 +01:00
Anna Kozlova
c798f3ab6b
inference variables: ensure variable is not mixed with type parameter for recursive calls (IDEA-147639)
2015-11-09 19:08:30 +01:00
Anna Kozlova
289aea179d
isPertinentToApplicability: check class type parameters if constructor is called with diamonds (IDEA-147619)
2015-11-09 19:08:30 +01:00
Anna Kozlova
6e853bf571
new inference: stop at first common supertypes pair during incorporation of upper bounds (IDEA-147393)
2015-11-05 15:24:18 +01:00
Anna Kozlova
ec5f440e09
subtyping constraint: accept array types if left type is assignable from array, e.g Serializable (IDEA-146592)
2015-10-20 20:58:49 +02:00
Anna Kozlova
d5a31ea205
inference: incorporation with capture and fresh variables (IDEA-145566)
2015-09-28 20:18:34 +02:00
Anna Kozlova
a811f9668e
new inference for enum constants (IDEA-144973)
2015-09-10 15:55:05 +03:00
Anna Kozlova
984b65ef65
new inference: incorporation with capture: treat type param's extends bounds as one as glb (IDEA-142145)
2015-09-02 17:04:31 +03:00
Anna Kozlova
c0de8d22c6
new inference: reject array upper bounds which contradict with another class type bound (IDEA-144159)
2015-08-20 19:31:03 +02:00
Anna Kozlova
8c2a945f80
testdata for IDEA-143390
2015-08-12 08:14:31 -07:00
Anna Kozlova
1df6b8e711
new inference: ensure erased target type if substitutor was raw (IDEA-143183)
2015-07-29 10:02:59 +02:00
Anna Kozlova
fb0495e4a4
nested conditional expressions: don't require nested to be poly if outer is not
2015-05-13 11:41:23 +02:00
Anna Kozlova
8b320ba8a7
disjunction type equals/hashCode, essential for new inference (IDEA-140150)
2015-05-12 11:39:47 +02:00
Anna Kozlova
553ad77e46
overload resolution: reject java 8 varargs methods when they are checked by fixed arity and number of parameters doesn't match
2015-04-24 20:33:40 +02:00
Anna Kozlova
3f27bb4d63
new inference: proceed nested calls of the same method with dependencies between inference variables from different calls (IDEA-136716; IDEA-135286)
2015-02-25 17:32:10 +01:00
Anna Kozlova
0c76e675ec
testdata for IDEA-134277
2015-02-20 22:12:23 +01:00
Anna Kozlova
7bdb789b45
new inference:
...
reject inference if lower and equals bounds do not agree;
-> inference variable should fill extends list types with it's upper bounds as they are correctly substituted with session's inference variables, otherwise incorporation up-up rule could get refs to initial type parameter instead of correct inference variable
2015-02-19 18:07:54 +01:00
Anna Kozlova
1ed0901d4b
new inference: reject equals bounds contradicting lower bounds
2014-12-17 09:57:48 +01:00
Anna Kozlova
983808535d
testdata for IDEA-132725
2014-11-12 19:37:58 +01:00
Anna Kozlova
66cd10b00c
new inference: unchecked conversion detection in case of inference variables (IDEA-122932)
2014-10-31 13:24:40 +01:00
Anna Kozlova
5136167d8b
new inference: use site substitution inside one level of inference only so calls with different site substitutions are possible in one expression (IDEA-131723; IDEA-131562)
2014-10-24 18:36:20 +02:00
Anna Kozlova
892fe777b0
testdata for IDEA-130547
2014-09-30 19:18:49 +02:00
Anna Kozlova
e6483ac10c
testdata for IDEA-130549
2014-09-30 19:18:48 +02:00
Anna Kozlova
38087e7f3b
do not erasure methods from non generics super types of raw types (IDEA-129646)
2014-09-18 15:02:23 +04:00
Anna Kozlova
cbb22b8c9f
new inference: process fresh variables depending on resolved vars (IDEA-56775)
2014-09-08 20:29:29 +04:00
Anna Kozlova
8e353cebff
testdata for IDEA-106985
2014-09-04 15:07:13 +04:00
Anna Kozlova
281546ac00
fix testdata imports
2014-08-28 15:20:58 +04:00
Anna Kozlova
d587b25852
testdata for IDEA-126163
2014-08-28 15:20:58 +04:00
Anna Kozlova
daae222bd0
testdata for IDEA-127285
2014-08-28 15:20:57 +04:00
Anna Kozlova
426836c303
testdata for IDEA-124151; IDEA-128245
2014-08-28 15:20:57 +04:00
Anna Kozlova
495e455ded
new inference: infinite types
2014-08-28 14:28:50 +04:00