Commit Graph

162 Commits

Author SHA1 Message Date
Anna Kozlova 0e5a7bca67 testdata for IDEA-174924 2017-06-23 18:19:42 +03:00
Anna Kozlova fb928f72c6 lambda inference: conditional expressions in returns (IDEA-174301)
skip conditionals and parenthesis during find top expression
2017-06-13 16:12:45 +03:00
Anna Kozlova ee0e90d92c provide applicability substitutor when inference fails for parent expression 2017-05-08 22:58:02 +03:00
Anna Kozlova 77f4894aae inference errors: make applicability error thread safe so multiple threads can perform overload resolution of parent method calls independently, save presentable error when substitutor cached only 2017-05-08 12:12:13 +03:00
Anna Kozlova 5516110b50 lambda: don't hide raw substitutions in functional types hierarchies (IDEA-172301) 2017-05-04 20:29:52 +03:00
Anna.Kozlova ee750f165b ensure array is not accepted as functional interface (IDEA-172048) 2017-04-28 20:23:23 +02:00
Anna.Kozlova fbf500d2d4 inference: skip standalone expressions in lambda returns (IDEA-171922) 2017-04-26 16:28:04 +02:00
Anna.Kozlova e2ceb575a2 testdata on javac issue 2017-04-26 16:28:04 +02:00
Anna.Kozlova b2ecf6e674 inference: don't fix the lambda return type for nested lambda processing (IDEA-169161) 2017-04-05 18:28:48 +02:00
Anna.Kozlova 95226c21c5 explicit right to left side assignment failure when inference breaks on return type (IDEA-152677) 2017-03-27 10:34:43 +02:00
Roman Shevchenko 6bd1b92c6e [tests] prepares Java tests for the language level raise 2017-03-24 13:19:01 +01:00
Anna.Kozlova 07a332598a ensure additional constrains are collected based on ground functional type (IDEA-167277) 2017-02-01 19:12:26 +01:00
Anna Kozlova 8913e40ed1 ground type for explicitly typed lambda: add sam to target class substitution (IDEA-166662) 2017-01-18 12:11:17 +03:00
Anna.Kozlova 9bcbdb68cb inference: register inference error when nested inference don't start as cached session already had errors 2016-10-21 18:07:07 +02:00
Anna.Kozlova b560ee5910 lambda highlighting: if return statement has problem, try to highlight only corresponding return even if containing inference failed 2016-10-07 13:55:01 +02:00
Anna.Kozlova 62d25f9d05 new inference: provide incomplete inference results for lambda (IDEA-162035; IDEA-155230) 2016-10-06 16:21:05 +02:00
Anna Kozlova 1bece25b95 inference: when unchecked conversion was applied, resolve variables against raw substitutor 2016-08-17 13:53:02 +03:00
Anna.Kozlova 035b6d9d1f lambda return type inconsistency: highlight all found errors (IDEA-158853) 2016-07-21 19:03:45 +02:00
Anna.Kozlova 107abaf891 good code red: applicability check for non-generic method requires types calculation 2016-05-20 21:44:12 +02:00
Anna.Kozlova ce58f62d19 lambda.isValueCompatible should not cache inference results for calls inside lambda body as they may depend on incomplete top level inference where LambdaExpressionCompatibilityConstraint is reduced (IDEA-156311) 2016-05-20 18:52:45 +02:00
Anna.Kozlova 25352dce0b avoid checks over not applicable methods (IDEA-156196) 2016-05-19 16:47:28 +02:00
Anna.Kozlova 3dd26b5936 testdata on partially raw types inferred by javac 2016-05-09 19:42:35 +02:00
Anna.Kozlova e588d2285a highlighting: don't add warning for nested lambda when problem is inside upper level (IDEA-155192) 2016-04-25 14:41:56 +02:00
Anna.Kozlova ee4f41b14c don't open captures on type computation (IDEA-154968) 2016-04-20 17:49:29 +02:00
Anna.Kozlova 320aeb7b5e inference: erasure functional type for raw substitutors (IDEA-154759) 2016-04-14 20:59:13 +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 2f0bfeb404 testdata for IDEA-153999 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 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 ab7f16e4b9 testdata for IDEA-153284 2016-03-21 14:14:26 +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 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 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 17743c0a87 unchecked warning: mark as unchecked if passed to strict subtyping (IDEA-151302) 2016-02-17 14:44:12 +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 e7c7fab136 stop at lambda also if it is explicitly typed
EA-78231 - SOE: InferenceSessionContainer.infer
2016-02-03 12:39:27 +03: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 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 31c6b67ce6 inference: stop tree up traversal when lambda expression is currently checked
EA-76546 - assert: InferenceSessionContainer.treeWalkUp
IDEA-150168; IDEA-150166
2016-01-08 20:15:17 +01:00
Anna Kozlova 210217ecfa new inference: already resolved vars can't have bounds problems (IDEA-149740) 2015-12-29 16:46:58 +01:00
Anna Kozlova c4711f94ef testdata for IDEA-149709 2015-12-28 19:07:22 +01:00
Anna Kozlova 29e713bb7e testdata for IDEA-149670 2015-12-28 14:57:27 +01:00
Anna Kozlova aa70efc9a4 testdata for IDEA-149224 2015-12-28 10:27:00 +01:00
Anna Kozlova 7249fd8179 lambda: missed ground type for target functional type (IDEA-149053) 2015-12-09 22:03:56 +01:00
Anna Kozlova 65194fd5f0 testdata for IDEA-127215 2015-12-03 19:11:09 +01:00
Anna Kozlova c16a53a9fb do not open capture when method call type is calculated 2015-12-03 12:18:25 +01:00
Anna Kozlova 2bb333cd43 testdata for IDEA-136325 2015-12-02 15:42:02 +01:00
Anna Kozlova 3a669178f5 do not open captured wildcards on substitution; don't capture wildcards on getExtendsTypes for type parameters and their consequences 2015-12-02 10:17:29 +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