Anna.Kozlova
0e808d9aff
highlight invalid method call: search for most probable argument-cause (IDEA-151202)
2016-03-24 15:58:41 +01:00
Anna.Kozlova
034012ae4e
overload resolution: clear inference errors from nested calls when top level expression is abadoned as non-applicable (IDEA-150718; IDEA-153222)
2016-03-18 15:50:22 +01:00
Anna Kozlova
1e764c9961
inference: skip lambda content and all its dependants when lambda type parameter type is calculated
2016-03-03 11:39:53 +01:00
Anna Kozlova
930df16f98
inference: propagate variable renames through the call hierarchy; calculate tooltips in tests (IDEA-151948)
2016-02-22 20:05:58 +01:00
Anna Kozlova
f09865ef1d
convert to diamonds: raise a problem if containing method can't be resolved (IDEA-151540)
2016-02-22 15:59:38 +01:00
Anna Kozlova
ef90033b1a
testdata
2016-02-18 19:47:21 +01:00
Anna Kozlova
0ac147ad95
inference: check glb with captured wildcard: if not assignable check if it is an interface
2016-02-17 17:24:41 +01:00
Anna Kozlova
42d50e32fe
testdata for IDEA-150688
2016-02-17 14:44:12 +01:00
Anna Kozlova
17743c0a87
unchecked warning: mark as unchecked if passed to strict subtyping (IDEA-151302)
2016-02-17 14:44:12 +01:00
Anna Kozlova
8fdf37e038
inference: skip unchecked warning for types based on inference variables (IDEA-151761)
2016-02-16 18:15:03 +01:00
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