Anna Kozlova
32147c73e1
type distinction tweak (IDEA-134960)
2015-12-03 19:11:09 +01:00
Anna Kozlova
3aa29923c6
provide access object for captured wildcards (IDEA-128542)
2015-12-03 15:27:26 +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
5ed0c728a2
testdata for IDEA-56754
2015-12-02 17:56:08 +01:00
Anna Kozlova
8a1085dac4
testdata for IDEA-131686
2015-12-02 15:42:02 +01:00
Anna Kozlova
65d35615df
testdata for IDEA-139169
2015-12-02 15:42:02 +01:00
Anna Kozlova
43e825eef9
testdata for IDEA-139156
2015-12-02 15:42:02 +01:00
Anna Kozlova
414454d4b7
testdata for IDEA-139222
2015-12-02 15:42:02 +01:00
Anna Kozlova
bb5f40c196
testdata for IDEA-134059
2015-12-02 15:42:02 +01:00
Anna Kozlova
e6162ed1fa
testdata for IDEA-148361
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
9308c52a3d
captured wildcards: check upper bound first
2015-12-01 10:04:46 +01:00
Anna Kozlova
621795bbee
isApplicability check based on pertinentToApplicability
2015-11-30 15:11:41 +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
Anna Kozlova
49dfdded70
new inference: don't push resolved vars in case of failed substitution
2015-11-24 10:30:21 +01:00
Anna Kozlova
138bd5a034
new inference: provide diagnostics on failed inference (strict subtyping constraints); don't resolve vars before incorporate - this way captures won't be opened too early
2015-11-24 10:30:21 +01:00
Anna Kozlova
d32e6ec080
new inference: start inference from top to bottom; ensure getTargetType doesn't perform any inference; cache intermediate results
2015-11-19 10:47:21 +01:00
Anna Kozlova
cbbd0e4456
detect array initializer type based on short variable array notation (IDEA-147881)
2015-11-13 16:07:17 +01:00
Anna Kozlova
a45937536a
unchecked warnings: check inferred type against bounds for java > 1.8 (IDEA-147529)
2015-11-10 18:45:36 +01:00
Anna Kozlova
e32dfdfa8a
UnsupportedOperationException
2015-10-15 15:02:50 +02:00
Anna Kozlova
f29517700f
highlight type parameter extends list errors: check once for all refs in refList not to repeat ourselves
2015-10-14 11:12:30 +02:00
Anna Kozlova
aba9734a6b
testdata for IDEA-107713
2015-09-04 14:10:37 +03:00
Anna Kozlova
05ae98b10d
testdata for IDEA-93713
2015-09-04 14:10:31 +03:00
Alexey Kudravtsev
9e99eabbb6
IDEA-141923 Errors in for-each statement header aren't highlighted if there're errors in its body
2015-06-26 14:42:13 +03:00
Anna Kozlova
92b7fa01c4
captures: don't distinguish captures from normal types but leave capture for the same type wildcard
2015-06-14 21:51:21 +03:00
Anna Kozlova
7b0c5b6d05
new inference: check equals/upper/low bounds consistency
2015-05-29 14:48:27 +02:00
Anna Kozlova
cdb50293f2
capture conversion: ensure captured wildcards are not replaced after creation, so substitution is consistent; at the same time ensure that "?" with upper bound Runnable is equivalent to "? extends Runnable"
2015-05-28 19:42:11 +02:00
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