Commit Graph

1207 Commits

Author SHA1 Message Date
Anna.Kozlova
c20dfc0165 java inference: ignore method reference constraints when starting from them
EA-209460 - IAE: ObjectUtils.$$$reportNull$$$

GitOrigin-RevId: 8476b832fcc1c85c10aed6ea56f65645bfd02b03
2019-11-28 10:38:15 +00:00
Anna.Kozlova
d4ff582489 assert no type execution under overload lock for diamonds
IDEA-CR-55327

GitOrigin-RevId: e2b1043a41b9548df3c2eb263a27da6d6c22b6be
2019-11-19 09:12:58 +00:00
Tagir Valeev
3fa35e0750 testResolveDiamondBeforeOuterCall simplified (TreeSet ctor overloads don't matter here)
GitOrigin-RevId: 6b303239bed1ffcfd94cbd54f781541e38dc5837
2019-11-15 10:05:32 +00:00
Tagir Valeev
85f72bfc0f testResolveDiamondBeforeOuterCall (fails if new expression type is requested before highlighting)
GitOrigin-RevId: b01abb3fbbebe28e3115aa109005851b62a02e7b
2019-11-15 08:03:12 +00:00
Anna Kozlova
eb79bfc3d3 java inference: ease assertion for lambdas in non-generic calls (EA-143883)
GitOrigin-RevId: 0e5ff0aa54375926c8ea5e2140458457250034dc
2019-11-08 21:03:13 +00:00
Anna Kozlova
856ec460c6 overload resolution: detect qualifier of unqualified call by processDeclaration's source where candidate was found
conflict resolution for static methods of the interface found by inheritance and nesting

GitOrigin-RevId: b637b02de4f59010a138c66890d1efcbcd1d588d
2019-11-07 02:40:58 +00:00
Anna Kozlova
d6297185ce java resolve: don't stop on found static method of the interface (IDEA-225660)
if the call site' qualifier is incorrect

GitOrigin-RevId: 782629045050df08fed3cf554682b63db8c9e1a8
2019-11-07 02:40:58 +00:00
Anna.Kozlova
589b029a97 java method ref highlighting: don't mirror errors of not applicable methods of return type (IDEA-224306)
GitOrigin-RevId: 40b4293c754640445b9fac741eab24261e8060cc
2019-10-10 10:03:10 +00:00
Anna.Kozlova
87deef960c incompatible types: highlight parent call instead of lambda when the error isn't related to lambda (IDEA-218801)
GitOrigin-RevId: 17a2f1f62f7703930aa25a8cfd6dfd4a918e1fe7
2019-10-10 07:01:11 +00:00
Anna.Kozlova
8db821428d lvti: special highlight for self referencing variables (IDEA-224449)
assume that null as type of the left side of the assignment is not possible

GitOrigin-RevId: c407cdc11e991c8db24ffd683f3b8ea883d41244
2019-10-09 10:32:32 +00:00
Anna Kozlova
1768efa804 incompatible types: highlight only wrong arguments instead of full arg list (IDEA-220107)
GitOrigin-RevId: 38a12e4fa7ea27d156dae1fe6bc7bd6902db6251
2019-09-20 19:31:36 +00:00
Anna Kozlova
fb5f755910 java inference: prevent recursive conflict resolution when it isn't prevented by ResolveCache guard
advanceResolve(incomplete=true) prevents guard to work

GitOrigin-RevId: 437ec02af808a89c8339909411bec6d95ff225dc
2019-09-13 07:12:19 +00:00
Anna Kozlova
d829a7c8f4 java inference: ensure that applicability check is not re-entered
this fixes assertion
	at com.intellij.util.ObjectUtils.assertNotNull(ObjectUtils.java:84)
	at com.intellij.psi.infos.MethodCandidateInfo.inferTypeArguments(MethodCandidateInfo.java:453)
caused by including expression compatibility constraints for expressions inside lambdas for which parameter types are calculated

GitOrigin-RevId: 0588bff4a719fb73ff49a51bc86635e56cd8d146
2019-09-05 19:19:32 +00:00
Anna Kozlova
55426d88a9 java resolve: ensure cached all qualifiers do not lead to cached types based on ThreadLocalTypes values
fixes failed check for different types returned on different threads (see JavaResolveCache#reportUnstableType)

GitOrigin-RevId: a5efd5e5a9657ad55c74e413185959c517e341e8
2019-09-01 17:03:16 +00:00
Anna Kozlova
1e5631c6ee fixing grammar
IDEA-CR-51559

GitOrigin-RevId: f44d7b539164a8086c022b786c721bf7011608b1
2019-08-22 01:50:10 +03:00
Anna Kozlova
fd969c0595 java resolve: cache resolved qualifiers when global cache is prohibited (IDEA-219505) ^peter
when type inference is called, it's not known if the client calls inference on resolved method or enumerates all possible candidates and thus the results cant be cached; current implementation is pessimistic and prohibit all caching during inference. Thus, for long method call chains which depend on some non-trivial calculations, it may be extremely resource consuming. Let's cache all qualifiers locally: this doesn't prevent recalculation globally but works around performance problems per single call

GitOrigin-RevId: b9b42cbc50918259f5de3a81d5f3a38967c153f1
2019-08-20 10:01:31 +03:00
Anna Kozlova
8777687e32 java inference: proceed with nested inference for lambda parameter type detection (IDEA-219330)
GitOrigin-RevId: f0a4862b94f9cff4c88b1f56425663bbd8659d7a
2019-08-07 00:03:21 +03:00
Anna Kozlova
616e3ca030 method references: allow access to protected methods through super (IDEA-217862)
GitOrigin-RevId: f1d86f6127a64146e87998423f3034e38a46409c
2019-08-05 23:03:36 +03:00
peter
a04504dddc don't suggest inaccessible qualifiers when chain-completing a java method reference (IDEA-217955)
GitOrigin-RevId: 78fc63c40948e6873279d6fe4c923bf3113a8b2e
2019-07-23 17:44:15 +03:00
Anna Kozlova
67839b3676 java unchecked warning: narrow down highlighting to class/method reference (IDEA-203860)
GitOrigin-RevId: ee686cedeef7aa677445b5054c9e191ce1d15a77
2019-07-15 12:05:58 +03:00
Anna Kozlova
bd882f2a97 java inference: stop walkUp in assignment context inside method call chain (IDEA-217928)
GitOrigin-RevId: 79ac2370cd302d7e38d029e065ff4a28ed8709a4
2019-07-11 23:22:40 +03:00
Anna Kozlova
cf944efffb java: adjusted "Cannot resolve method" message (IDEA-206898)
GitOrigin-RevId: 40fc7d00d6bcc4792dc097dde63dd40d08864068
2019-07-10 23:02:59 +03:00
Artemiy Sartakov
642c65dd11 MethodReturnTypeFix: highlight only return statements when method return type doesn't match expected (IDEA-216275)
GitOrigin-RevId: d5f7dc3b03d68d249ba29532b0e8c0555cae60d6
2019-07-08 15:09:05 +03:00
Anna Kozlova
afa0706bfc java highlighting: provide better incompatible types message on failed inference
GitOrigin-RevId: 5f97ec808f753d9ca40c417704ec93a802512745
2019-07-08 12:04:21 +03:00
Artemiy Sartakov
42d733a694 MethodReturnTypeFix: updated fix to change method return type based on return statements in method body (IDEA-216275)
GitOrigin-RevId: e97990950039123c8c41921a71342b8ed60afdee
2019-07-04 09:02:24 +03:00
Anna Kozlova
667d922108 overload resolution: static methods from super interfaces should be skipped in favor to instance methods (IDEA-216009)
GitOrigin-RevId: f172ea91498434cd956010df286dc418334a83b9
2019-06-16 07:52:26 +03:00
Roman Shevchenko
04e6f4a623 Cleanup (warnings; typos; formatting)
GitOrigin-RevId: 1cad4232ba1d1f58c522aa26019d245e2bf6832d
2019-06-16 06:52:20 +03:00
Vyacheslav Karpukhin
d5fb24d414 Merge commit 'a85b798667f6a81500b21eda3c8d508a28cb969c' into slava/out_of_process_sim_and_dev
GitOrigin-RevId: ccfc7bb2ab1846fbf2c169f6262ffa412f3efb80
2019-06-16 06:51:48 +03:00
Dmitry Jemerov
da9e941d80 @NotNull for RunConfigurationExtension.updateJavaParameters()
GitOrigin-RevId: 5c472044f340aeaf67f3a81695814e70e3a125f0
2019-06-16 06:51:17 +03:00
Vyacheslav Karpukhin
24d766790c Merge commit 'a85b798667f6a81500b21eda3c8d508a28cb969c' into egorzhdan/coverage
GitOrigin-RevId: 55b653eb620e8dc5642c467b0308e447a5ac32a7
2019-06-16 06:50:45 +03:00
Anna Kozlova
5355846fe0 constructor reference: don't ignore constructor parameters during method reference inference (IDEA-185578)
GitOrigin-RevId: e836468e05db28157713e9edd3c70382f8ecdebc
2019-06-16 06:35:42 +03:00
Rustam Vishnyakov
123242c4b2 EditorConfig documentation test
GitOrigin-RevId: fd52ace3d7a32ecd02c2c5ab90e077967604c15e
2019-06-16 04:03:21 +03:00
Egor Zhdan
c1813cfb52 Cleanup: NotNull/Nullable
GitOrigin-RevId: b8e892f32ea84c2115973155dba7127b892cc36e
2019-06-16 04:02:08 +03:00
Eldar Abusalimov
1120c30a56 Merge remote-tracking branch 'origin/master' into eldar/cidr-debugger
# Conflicts:
#	CIDR/clion/src/com/jetbrains/cidr/cpp/toolchains/MSVC.java

GitOrigin-RevId: f3593b526d1870f32b3f1451cab0c6a653e5beb5
2019-06-16 03:01:38 +03:00
Anna Kozlova
67d165e584 overload resolution: static methods from super interfaces should be skipped in favor to instance methods (IDEA-216009)
GitOrigin-RevId: f172ea91498434cd956010df286dc418334a83b9
2019-06-14 00:13:20 +03:00
Roman Shevchenko
c1a58ffd17 Cleanup (warnings; typos; formatting)
GitOrigin-RevId: 1cad4232ba1d1f58c522aa26019d245e2bf6832d
2019-06-13 03:32:53 +03:00
Vyacheslav Karpukhin
e4effb75b9 Merge commit 'a85b798667f6a81500b21eda3c8d508a28cb969c' into slava/out_of_process_sim_and_dev
GitOrigin-RevId: ccfc7bb2ab1846fbf2c169f6262ffa412f3efb80
2019-06-13 03:32:21 +03:00
Dmitry Jemerov
7afa5ca0ac @NotNull for RunConfigurationExtension.updateJavaParameters()
GitOrigin-RevId: 5c472044f340aeaf67f3a81695814e70e3a125f0
2019-06-13 03:31:49 +03:00
Vyacheslav Karpukhin
8f41ae3227 Merge commit 'a85b798667f6a81500b21eda3c8d508a28cb969c' into egorzhdan/coverage
GitOrigin-RevId: 55b653eb620e8dc5642c467b0308e447a5ac32a7
2019-06-13 03:31:18 +03:00
Anna Kozlova
91f7445298 constructor reference: don't ignore constructor parameters during method reference inference (IDEA-185578)
GitOrigin-RevId: e836468e05db28157713e9edd3c70382f8ecdebc
2019-06-13 03:15:49 +03:00
Egor Zhdan
39d2d77155 Cleanup: NotNull/Nullable
GitOrigin-RevId: b8e892f32ea84c2115973155dba7127b892cc36e
2019-06-13 03:14:35 +03:00
Julia Beliaeva
3fee046d20 [vcs-log] cleanup RootCellRenderer
GitOrigin-RevId: bba216626193ac756cd133b8ae9bc4e577abea42
2019-06-10 04:10:14 +03:00
Eldar Abusalimov
dcaeb8f8c7 OC-4061: ApplicationUtil: Make runWithCheckCanceled() return result
GitOrigin-RevId: 3aa9f23cc5097e644eddf82a4faca669759b4760
2019-06-10 04:09:35 +03:00
Anna Kozlova
b540bb262e overload resolution: ensure type parameters of containing class are fixed during most specific inference (IDEA-205886)
GitOrigin-RevId: 01b3a6f25c68e27475a053c74a7765e84147beca
2019-06-06 18:11:25 +03:00
Anna Kozlova
81a13b0fc0 inference: register nested sessions for void compatible lambdas (IDEA-207070)
GitOrigin-RevId: 77f740e2754917b0053fcb79fb56e2b0c62436f4
2019-06-05 11:12:12 +03:00
Anna Kozlova
bff61142a8 testdata for IDEA-211775
GitOrigin-RevId: d3001a3ef0d439c9701c7d6bf83e9363065477f0
2019-06-05 11:11:42 +03:00
Aleksey Rostovskiy
185284cee6 get rid of intellij.build.toolbox.litegen parameter and use BuildOptions.TOOLBOX_LITE_GEN_STEP to skip it instead
GitOrigin-RevId: 9aac8ee4ed1ebf2a29de18a238825fafb1ab88f9
2019-05-27 15:08:08 +03:00
Alexandr Suhinin
9215f4240b [duplicates] enable duplicates analysis in PyCharm/WebStorm/PhpStorm/RubyMine
GitOrigin-RevId: 1545b79fdca4888f4b94f47f22703fd37694fa7a
2019-05-27 15:07:30 +03:00
peter
000ccd1dbc java: prohibit caching when using thread-local types imposed on expressions and declarations in complex nested inference scenarios
GitOrigin-RevId: a767826dedb5d1879009ee5804e1c675d1b863ac
2019-05-27 09:04:05 +03:00
Anna Kozlova
d8afa71220 inference: stop at assignment when walking up to the top level (IDEA-207128)
GitOrigin-RevId: d12b1e0af3e3f2880e14ecb000e82e3afa887228
2019-05-22 00:06:40 +03:00