Anna Kozlova
b06817081b
new inference: reject to infer variables if it's upper bound doesn't agree with lower/equal bound (when present)
2015-02-19 18:07:55 +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
e315ef4b41
TypeName.super.foo() when TypeName denotes interface
2015-01-31 21:29:22 +03:00
Anna Kozlova
1ed0901d4b
new inference: reject equals bounds contradicting lower bounds
2014-12-17 09:57:48 +01:00
Anna Kozlova
f217ed47c4
new inference: reject contradicting equals bounds
2014-12-17 09:57:47 +01:00
Anna Kozlova
e0b2d2d8f0
new inference: process wildcards captured bounds
2014-12-17 09:57:45 +01:00
Alexey Kudravtsev
6ce8da783c
fix RefCountHolder to avoid "all yellow" syndrome, highlighting cleanup
2014-11-28 14:26:06 +03:00
Anna Kozlova
8dd8f509f6
substitution: do not open unbounded capture during substitution (IDEA-125423)
...
(cherry picked from commit 1a8180cabca79b6ab2972a759aaffaa043f60c57)
2014-10-17 21:05:53 +02:00
Anna Kozlova
bc8a70e89f
fix erasure of captures special case, not valid anymore for new compilers (IDEA-131348)
...
(cherry picked from commit 0f357add956c0340ce08c79a14c052007e53be86)
2014-10-17 21:03:34 +02:00
Anna Kozlova
b2ea4c6e79
inference: simplify bounds check; ensure fresh variables are treated as same, important e.g. in case of diamond operator when inferred types are new each time they are computed (IDEA-131066)
...
(cherry picked from commit 517c299e336e38bc20d3478191279be2176fbd9b)
2014-10-13 19:33:33 +02:00
Anna Kozlova
39154531ec
unchecked warning: do not traverse through lambda bounds (IDEA-130810)
2014-10-06 10:39:43 +02:00
Anna Kozlova
158a01135c
regression testdata added
2014-08-29 14:36:54 +04:00
Anna Kozlova
624fa25d38
capture conversion: add upper bound for ? super if corresponding type parameter has upper bounds( IDEA-128328; IDEA-128972)
2014-08-27 20:59:32 +04:00
Anna Kozlova
9b5eb2418f
new inference: fresh variables
2014-08-21 18:14:27 +04:00
Anna Kozlova
4131ada075
testdata for IDEA-78402
2014-08-18 21:45:31 +04:00
Anna Kozlova
506a2cbbbc
include anonym prefix in internal canonical text to avoid incompatibility messages with "same" types on both sides
2014-05-22 20:45:58 +04:00
Anna Kozlova
902e51a856
substitute bounds (IDEA-123509)
2014-04-29 18:54:59 +04:00
Anna Kozlova
b55c83742b
new inference: processing of compound bounds
2014-03-27 20:54:27 +01:00
Anna Kozlova
e55a20cc24
raw substitutor when erasure happened during inference
2014-03-27 20:54:26 +01:00
Anna Kozlova
40424a1615
wildcard substitution partly reverted (IDEA-122700)
2014-03-24 20:22:26 +01:00
Anna Kozlova
9845ef2fd8
new inference: capture nested call case fixed (~Collections)
2014-03-21 13:16:46 +01:00
Anna Kozlova
4686315880
A class may not at the same time be a subtype of two interface types which are different parameterizations of the same generic interface(IDEA-122475); revert workarounds for javac 6 bug
2014-03-20 20:05:27 +01:00
Anna Kozlova
e6547e3991
poly conditional expression type = target type (IDEA-122401)
2014-03-19 19:32:35 +01: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
95977a086c
new inference: cleanup
2014-03-05 16:17:00 +01:00
Anna Kozlova
d8b3e5c7fd
new inference: captures should stay closed inside nested calls
2014-02-28 20:07:08 +01:00
Anna Kozlova
1b0e87f99e
java 8: allow to cast to intersection types
2014-02-19 09:46:17 +01:00
Anna Kozlova
bd681beb26
new inference: 18.5.2 adjustments
2014-02-19 09:46:15 +01:00
Anna Kozlova
61039804a9
bound promotion for super wildcard (? super A (bound extends A) == A)
2014-02-19 09:46:14 +01:00
Anna Kozlova
19ba9d8c8d
new inference: resolve
2014-02-19 09:46:05 +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
021c0c891e
new inference: stop inference if false was inferred
2014-02-12 09:46:33 +01:00
Anna Kozlova
b5e1b382c8
new inference: incorporation step: substitute equal bounds
2014-02-12 09:46:32 +01:00
Anna Kozlova
b9ef7b60c7
new inference: subtyping/equality constraints interoperability
2014-02-11 09:39:59 +01:00
Alexey Kudravtsev
ad661d92e4
correct level in highlighting:
...
highlight element X only when visiting X or its ascendant
2014-02-10 20:03:58 +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
5a9c00a259
type compatibility constrain: unchecked conversion step
2014-01-31 21:41:15 +04:00
anna
b8c1c38788
new inference: raise a conflict for 2 captured wildcards as equality constraints
...
(cherry picked from commit 52bf5c35f05483ed957af17eb80b1b70cd3ed1c9)
2013-11-25 16:47:50 +01:00
anna
481bc252f3
switch tests on new inference
...
(cherry picked from commit d2cbf3f2833104c3a0381059b0d6ef8ac0b3c94c)
2013-11-25 16:47:38 +01:00
anna
1f5e19ea8f
inference testdata fixed
...
(cherry picked from commit 684b8905b9b3be10200c855af7b54d543b128f2b)
2013-11-25 16:47:20 +01:00
anna
4496371ca3
testdata
2013-11-12 22:38:06 +01:00
anna
a902c4ee87
testdata fixed
2013-11-08 11:06:57 +01:00
anna
5bd8b62070
fix to switch intersection types order in casts when one of the last types is not an interface
2013-10-31 16:35:39 +01:00
anna
9286cb4a28
testdata fixed
2013-10-30 17:46:35 +01:00
anna
417e906b18
test data fixed
2013-10-02 19:50:13 +02:00
anna
e6ea7bc88c
accept type arguments on raw types for > 1.6 javac
2013-10-01 21:42:31 +02:00
anna
2ea47e35b1
new inference: move test
2013-09-26 19:16:12 +02:00
Anna Kozlova
ee56497e3d
new inference: symmetric variable bounds
2013-09-20 20:36:36 +04:00
Anna Kozlova
4a46b24bcb
new inference: init inter call inference
2013-09-20 20:36:35 +04:00
Anna Kozlova
935cdbaf3b
new inference: initial tests
2013-09-20 12:11:57 +04:00