Commit Graph

1005 Commits

Author SHA1 Message Date
Anna.Kozlova
abf32b50d5 don't calculate type of method expression which is located on the left side of assignment - assignment is invalid anyway
(EA-77049 - assert: PsiMethodCallExpressionImpl$TypeEvaluator.fun)
2016-04-19 19:05:54 +02:00
Anna.Kozlova
4c06b785c0 testdata for IDEA-154861 2016-04-18 12:54:50 +02:00
Anna.Kozlova
43fc40c4a5 anonym -> lambda, redundant cast, redundant type args: process top level overloads (IDEA-152766);
rearrange utils
2016-04-15 18:43:24 +02:00
Anna.Kozlova
09f46115cf redundant cast: special processing for functional expressions as enum args (IDEA-154354) 2016-04-15 18:43:24 +02:00
Anna.Kozlova
320aeb7b5e inference: erasure functional type for raw substitutors (IDEA-154759) 2016-04-14 20:59:13 +02:00
Anna.Kozlova
f64bd14441 method refs: site substitution should not replace session setup (IDEA-154722) 2016-04-14 12:28:44 +02:00
Anna.Kozlova
d780e31bdf inference: ensure foreign variables do not participate in inference process, e.g. variables from method reference overload resolution (IDEA-154622) 2016-04-13 21:11:02 +02:00
Anna.Kozlova
9086115347 method ref: type parameter instantiation (IDEA-154645) 2016-04-13 12:30:54 +02:00
Anna.Kozlova
1466b0155e bad code green: reject return type constraint if unchecked conversion was applied during applicability check and return type is type parameter 2016-04-11 21:51:18 +02:00
Anna.Kozlova
9150e6fd4a clear error message (IDEA-154419) 2016-04-08 18:44:25 +02:00
Anna.Kozlova
a8ad27f8a9 no need to check unrelated concrete for same named constructors in the hierarchy (IDEA-154377) 2016-04-08 18:44:25 +02:00
Anna.Kozlova
0ed05632ff ensure non-initialized fields used inside lambdas are rejected if lambda is inside class initializer only (IDEA-154305) 2016-04-07 15:13:00 +02:00
Anna.Kozlova
3966e55bbf testdata for IDEA-154278 2016-04-06 21:17:37 +02:00
Anna.Kozlova
0ca2e9cdd6 don't pass erasure flag through inference process 2016-04-06 17:15:12 +02:00
Anna.Kozlova
1bc380f6fd overload resolution: skip static correctness check during overload resolution (IDEA-154187) 2016-04-06 12:51:57 +02:00
Anna.Kozlova
c35fa1891b if client iterates through candidates of call resolve results and start inference for one of them, then cached top level session should be rejected if it corresponds to another candidate 2016-04-06 12:51:57 +02:00
Anna.Kozlova
cd9c406260 don't cache substitutors during processing of all candidates (blinking red code) 2016-04-05 21:03:27 +02:00
peter
99bb53c9f6 no irrelevant java completion inside comments (IDEA-153683) 2016-04-04 16:42:04 +02:00
Anna.Kozlova
2f0bfeb404 testdata for IDEA-153999 2016-04-01 16:53:23 +02:00
Anna.Kozlova
c1c40665ce erasure type of new expression if diamonds were used and during applicability check unchecked conversion was applied (IDEA-154009) 2016-04-01 16:53:23 +02:00
Anna.Kozlova
e6426783b4 new inference: forget nested states when expressions were processed second time (IDEA-153897) 2016-03-30 21:02:16 +02:00
Anna.Kozlova
cc72bd0319 inference: restore probably partial raw inference as this way expected raw types are preserved and Objects won't be inferred in place where raw types were expected 2016-03-30 12:15:25 +02:00
Anna.Kozlova
d5613fae7f testdata for IDEA-153632 2016-03-29 21:17:55 +02:00
Anna.Kozlova
f139c4cef4 new inference: check provided lower bounds on type parameters, in case of fresh variables they declare the type hierarchy and otherwise constrains won't agree (IDEA-153642) 2016-03-29 16:51:50 +02:00
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
bf5cd076c1 new inference: avoid inferring partly raw types (in case of unchecked conversion resolve to eq/low bound or null if only upper is present) as these types won't be treated as wildcard parameterized ever (IDEA-150167) 2016-03-24 11:48:06 +01:00
Anna.Kozlova
c5c96608b7 most specific check for proper functional types fixed 2016-03-21 19:35:58 +01:00
Anna.Kozlova
a3aca75748 overload resolution: testdata for java 8 bug 2016-03-21 19:35:58 +01:00
Anna.Kozlova
ab7f16e4b9 testdata for IDEA-153284 2016-03-21 14:14:26 +01:00
Anna.Kozlova
3a700a9bc9 process override equivalent methods when check for functional interface target (IDEA-153324) 2016-03-21 14:14:26 +01:00
Anna.Kozlova
395c55df75 testdata for IDEA-150754 2016-03-18 15:50:22 +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
53d3aa770c inference: don't include constraints to resolve if input bounds have proper instantiation but depends on the output of another constraints (IDEA-153164) 2016-03-17 21:25:32 +01:00
Anna.Kozlova
ec5245ed00 redundant cast: recapture wildcards for non-physical elements (IDEA-153166) 2016-03-17 18:04:01 +01:00
Anna.Kozlova
dcbb728074 testdata for IDEA-153076 2016-03-16 15:35:39 +01:00
Anna Kozlova
7cfcb1bb69 testdata based on IDEA-152768 2016-03-14 17:48:06 +01:00
Anna Kozlova
23df4bf2a1 redundant cast: open capture to compare old and new result types 2016-03-11 10:51:37 +01:00
Anna Kozlova
320904a20f redundant cast: compare base types for anonymous classes 2016-03-11 10:51:37 +01:00
Anna Kozlova
ea84b25cc5 unrelated defaults: ignore type parameters check for abstract methods only, leave as is for defaults 2016-03-11 10:04:22 +01:00
Anna Kozlova
9675e0248a unrelated defaults: don't check type parameters 2016-03-11 09:38:32 +01:00
Anna Kozlova
119449501b testdata for IDEA-152659 2016-03-09 14:23:53 +01:00
Anna Kozlova
5b8e459686 lambda: proceed c-like arrays declarations in parameters for lambda with excplicit type declarations (IDEA-152690) 2016-03-09 14:23:53 +01:00
Anna Kozlova
8ff49ddc39 inference: proper exceptions thrown checks (IDEA-152577) 2016-03-04 17:00:37 +01:00
Anna Kozlova
46c29366cb additional testdata (following IDEA-CR-8743) 2016-03-03 15:22:36 +01:00
Anna Kozlova
480658c12e unrelated defaults: adjust pattern in current class to super class substitution 2016-03-03 13:31:40 +01:00
Anna Kozlova
6c5fc69ae9 inference: don't check bounds for variables which may depend on another variable with inconsistency bounds 2016-03-03 13:31:40 +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
cbd7853f19 fix for default overriding abstract: missed substitutor 2016-02-26 16:06:22 +01:00
peter
b3a7925265 a test for EA-78631 - IAE: LightVariableBuilder.<init> (IDEA-CR-8189) 2016-02-26 15:19:04 +01:00
Anna Kozlova
3434d9cc47 method reference: capture wildcards of new expressions (IDEA-152115) 2016-02-25 19:42:52 +01:00