Leonid Bushuev
9f35a30458
SQL code style per dialect: UI
...
GitOrigin-RevId: 72cca4d6a23a5e2aa2089c03932ab2e9d08bfa48
2019-05-03 01:36:24 +03:00
Anna Kozlova
7a03a2be5c
method references overload resolution: skip static methods of interfaces called on inheritor (IDEA-209920)
...
GitOrigin-RevId: 9e7889def32913679fa867f9dd2a80f8d187964e
2019-04-28 19:25:43 +03:00
Anna Kozlova
00fbf3d133
lambda potential compatibility: don't treat array creation as void compatible
...
array creation can't be used as expression statement thus corresponding lambda body is value compatible but not void compatible
GitOrigin-RevId: b0ddccad13c8699de64c4ce3e584214fe08a2353
2019-04-28 14:57:53 +03:00
Anna.Kozlova
d2042376d2
overload resolution: erase type of parameter when site substitutor is raw (IDEA-203450)
...
similar to erasure of call type when inferred substitutor is raw
2018-12-03 15:21:12 +01:00
Anna.Kozlova
b015644d7a
get rid of redundant space in error message
2018-11-21 15:54:15 +01:00
Anna.Kozlova
50b66d9d4b
method reference overloads: second search should provide actual parameter types with 1 offset (IDEA-200218)
2018-10-22 17:02:20 +02:00
Anna.Kozlova
9aa64b30d9
inference: allow child session inference if containing method is not generics
2018-10-19 17:52:43 +02:00
Anna Kozlova
04b7efb5cd
don't calculate substitution for overload resolution applicability checks
2018-01-22 17:07:38 +03:00
Anna.Kozlova
1d6641db80
overload resolution: check method hiding for static only (IDEA-183712)
...
non-static methods should already be covered by same signatures check
2017-12-13 14:10:59 +01:00
Anna.Kozlova
6bb976899e
overload resolution: resolve conflicts with static methods in super interfaces
2017-10-24 10:57:06 +02:00
Anna.Kozlova
14cb19fa39
overload resolution: accept unqualified calls of static interface methods (IDEA-180236)
2017-10-09 15:00:48 +02:00
Anna.Kozlova
dec0d16597
overload resolution: adapt return types before comparing (IDEA-177065)
2017-08-07 18:28:03 +02:00
Anna Kozlova
d31ca80cac
testdata for IDEA-158047
2017-05-10 20:35:34 +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
b893701408
overload resolution: same signatures should not check return types, etc already processed in hierarchical signatures (IDEA-172129)
2017-04-28 20:23:23 +02:00
Anna.Kozlova
16b0cce4f6
overload resolution: don't skip static method conflicts in classes in hierarchy (IDEA-171617)
2017-04-19 14:01:07 +02:00
Anna.Kozlova
9dfdd49e17
find class or interface to search the method: stop when accessible method is found even with static problem (IDEA-169504)
2017-03-15 10:41:42 +01:00
Anna.Kozlova
af3deb08fe
overload resolution: ensure cleanup both branches of conditional (IDEA-169142)
2017-03-06 15:14:54 +01:00
Anna.Kozlova
8f533a3edc
overload resolution: don't ignore method with incorrect number of parameters when it overrides vararg method (IDEA-165829)
2016-12-27 11:29:37 +01:00
Anna.Kozlova
ccb61093af
overload resolution: don't choose most specific method based on boxing property for vararg position (IDEA-163597)
2016-11-17 17:10:53 +01:00
Anna.Kozlova
3797d3ea1c
ensure ambiguity error presentation doesn't depend on previous calls to getSubstitutor()
2016-10-21 18:07:07 +02:00
Anna Kozlova
f4dae32d7f
overload resolution: prefer candidates with functional formal type if lambda is passed; this way conflict would be resolved and nested error would be shown instead
2016-09-16 08:34:15 +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
1193a54876
warn about unused parameter if method is used locally as method reference as it could be transformed to equivalent lambda (IDEA-157988)
2016-06-29 20:32:32 +03:00
Anna Kozlova
99fe682d0b
Revert: overload resolution: don't prefer concrete over abstract if the signatures are not override-equivalent ( 2bedb80d81)
2016-05-31 11:44:10 +03:00
Anna Kozlova
2bedb80d81
overload resolution: don't prefer concrete over abstract if the signatures are not override-equivalent
2016-05-30 11:28:01 +03:00
Anna.Kozlova
1bc380f6fd
overload resolution: skip static correctness check during overload resolution (IDEA-154187)
2016-04-06 12:51:57 +02: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
c5c96608b7
most specific check for proper functional types fixed
2016-03-21 19:35:58 +01:00
Anna.Kozlova
a3aca75748
overload resolution: testdata for java 8 bug
2016-03-21 19:35:58 +01:00
Anna.Kozlova
dcbb728074
testdata for IDEA-153076
2016-03-16 15:35:39 +01:00
Anna Kozlova
7cfcb1bb69
testdata based on IDEA-152768
2016-03-14 17:48:06 +01:00
Anna Kozlova
8b16402ca3
overload resolution: proceed with additional constraints when qualifier type is calculated (IDEA-151409)
2016-02-19 19:18:43 +01:00
Anna Kozlova
779d43a6df
testdata for IDEA-151823
2016-02-19 19:18:43 +01: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
a035c14d75
overload resolution: don't include constraints on functional expressions into applicability check during overload resolution (IDEA-150745)
2016-01-26 17:30:03 +03:00
Anna Kozlova
a166bd1059
overload resolution: infer most specific agains formal param types substituted against site substitutor, including param bounds (IDEA-150773)
2016-01-25 18:52:15 +03:00
Anna Kozlova
883f7f3f39
overload resolution: apply site substitution before potential compatibility check (IDEA-150807)
2016-01-25 18:52:15 +03:00
Anna Kozlova
3baa03058b
overload resolution: ensure all list of parameters is checked during most specific check of varargs methods (IDEA-150224)
2016-01-11 16:36:11 +01:00
Anna Kozlova
d9aeacbf48
overload resolution: don't prefer generic to raw substitution (IDEA-149289)
2015-12-28 10:27:00 +01:00
Anna Kozlova
c81d887251
ensure potential compatible for pertinent to applicability: when number of parameters is wrong methods which are not potentially compatible are not filtered (IDEA-149103)
2015-12-09 19:28:03 +01:00
Anna Kozlova
b580d8eccb
AIOOBE
2015-12-03 19:11:09 +01:00
Anna Kozlova
e8111b751e
new overload resolution: don't treat array type of functional interfaces as functional interface (IDEA-148726)
2015-12-02 17:56:08 +01:00
Anna Kozlova
878ac5560e
overload resolution: boxing should ignore null types (IDEA-148692)
2015-11-30 19:45:19 +01:00
Anna Kozlova
621795bbee
isApplicability check based on pertinentToApplicability
2015-11-30 15:11:41 +01:00
Anna Kozlova
169b42916e
new inference: don't treat void as primitive type to boxing
2015-11-25 12:25:02 +01:00
Anna Kozlova
2d21b7777e
method reference: don't start containing class parameter type inference for receiver-reference; corresponding substitutor should be already known (IDEA-146604; IDEA-147223)
2015-11-03 17:10:58 +01:00
Anna Kozlova
d13663483d
overload resolution: choose one of overload equivalent abstract methods arbitrarily (IDEA-146261)
2015-10-12 20:15:40 +02:00
Anna Kozlova
c000624704
overload resolution: treat default methods as abstract; don't include static interface methods in conflict resolution when target expression type does not correspond to the containing interface (IDEA-146055)
2015-10-07 19:36:05 +02:00