Commit Graph

21 Commits

Author SHA1 Message Date
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
1bece25b95 inference: when unchecked conversion was applied, resolve variables against raw substitutor 2016-08-17 13:53:02 +03: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
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
8ff49ddc39 inference: proper exceptions thrown checks (IDEA-152577) 2016-03-04 17:00:37 +01:00
Anna Kozlova
f9fd72ebac captured wildcard in subtyping constraints: use upper bound only (IDEA-139046) 2015-05-12 17:07:07 +02:00
Anna Kozlova
c11d64ac60 new inference: distinguish return type type parameters and current session inference variables (IDEA-135001) 2015-01-07 15:34:27 +01:00
Anna Kozlova
16838a8c11 new inference: teach strict subtyping constraint about intersection types (IDEA-129727) 2014-09-11 09:49:51 +04:00
Anna Kozlova
10760d9bbf new inference: process varargs as separate method candidate/separate phase
(cherry picked from commit fdd6f66268d29bb996a103f69180851b92947d21)
2014-03-12 10:15:03 +01:00
Anna Kozlova
dccb826526 new inference: cache substitutor for outer call conflict resolution 2014-03-07 18:02:48 +01:00
Anna Kozlova
828cb5a1a2 new inference: erase return type if unchecked conversion was performed 2014-02-24 18:59:40 +01:00
Anna Kozlova
694432f156 new inference: capture conversions in return types initial; variable dependencies 2014-02-19 09:46:04 +01:00
Alexey Kudravtsev
c7b78f76a2 IDEA-120784 "Class is public should be declared in a file named <Classname>.java" for inner interface 2014-02-18 13:55:52 +04:00
Anna Kozlova
865a535fa7 new inference: wildcard parameterization inference 2014-02-06 19:34:13 +01:00
Anna Kozlova
ef15e60ccf new inference: lambda compatibility: ground type constraint added 2014-02-03 19:35:45 +04:00
Anna Kozlova
89d2ebc500 invocation type inference: when unchecked conversion was performed - treat its results in return value checks as they were in bounds 2014-01-31 22:16:02 +04:00
Anna Kozlova
be84252e83 type equality constraint: reject type/wildcard pairs; subtyping constraint: become eq constraint for types 2014-01-31 21:41:19 +04:00
Anna Kozlova
f26b80359a type compatibility constrain: unchecked conversion: return type is inference variable case 2014-01-31 21:41:17 +04:00
Anna Kozlova
5a9c00a259 type compatibility constrain: unchecked conversion step 2014-01-31 21:41:15 +04:00
Anna Kozlova
af8095f8b0 type compatibility constrain: boxing is not completeness-preserving: move treatment to return constraint 2014-01-31 21:41:14 +04:00
Anna Kozlova
4444fc1126 type equality constraint: accept unbounded/extends wildcards pair; reject unbounded/super 2014-01-31 21:41:13 +04:00