Anna Kozlova
d2c76135df
testdata for IDEA-67592
2015-05-21 10:00:45 +02:00
Anna Kozlova
e529861e4a
testdata for IDEA-67746
2015-05-21 10:00:44 +02:00
Anna Kozlova
4afc0327aa
testdata for IDEA-57502
2015-05-21 10:00:41 +02:00
Anna Kozlova
c0258b3e2d
testdata for IDEA-139090
2015-05-21 10:00:39 +02:00
Anna Kozlova
5eb8d5a8e6
testdata for IDEA-57320
2015-05-21 10:00:38 +02:00
Anna Kozlova
d64ec6f997
testdata for IDEA-57362
2015-05-21 10:00:36 +02:00
Anna Kozlova
eb0904cfd9
testdata for IDEA-57322
2015-05-21 10:00:34 +02:00
Anna Kozlova
97d8c99958
testdata for IDEA-57314
2015-05-21 10:00:33 +02:00
Anna Kozlova
78fe89e6c2
testdata for IDEA-57315 comment
2015-05-21 10:00:31 +02:00
Anna Kozlova
819f620cc8
testdata for IDEA-57387
2015-05-21 10:00:28 +02:00
Anna Kozlova
59f4b04154
testdata for IDEA-57313
2015-05-21 10:00:26 +02:00
Anna Kozlova
6f657b665f
testdata for IDEA-67745
2015-05-21 10:00:25 +02:00
Anna Kozlova
6b65d86df3
testdata for IDEA-139069
2015-05-20 10:47:25 +02:00
Anna Kozlova
fdbfd64350
ensure enum constructors are private (IDEA-139065)
2015-05-12 17:07:08 +02:00
Anna Kozlova
21f187bd44
separate capture conversion from substitution
2015-04-27 09:32:20 +02:00
Anna Kozlova
f5cec5e24a
intersection in cast type: repeat interface, different parameterization checks
2015-04-20 10:19:22 +02:00
Anna Kozlova
2318a3a58c
capture conversion: collect all type parameter's bounds during capture conversion; make sure collected upper bound is used after capture type is normalized
2015-04-20 10:19:20 +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
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