Commit Graph

196 Commits

Author SHA1 Message Date
Yan Zhulanow ea7ffa70b3 Debugger: Add test for KT-34905 2020-02-14 17:35:19 +09:00
Yan Zhulanow 6690f946d6 Debugger: Add test for KT-14296 2020-02-14 17:35:19 +09:00
Yan Zhulanow 6f425ee951 Debugger: Add test for KT-15652 2020-02-14 17:35:18 +09:00
Yan Zhulanow dd33640238 Debugger: Skip inlined library frames on step over (KT-12016) 2020-02-14 17:35:18 +09:00
Yan Zhulanow 7490c229ac EA-219152 (partially): Support KClass 'unboxing' in debugger
KClass can be 'unboxed' to a plain Java class. Debugger should be aware of this.
Unfortunately, this commit is not enough to fully support this scenario, as it's impossible to invoke KClass methods/extension on java.lang.Class instance. There should be an additional diagnostic that will forbid such calls.
2020-02-14 17:35:18 +09:00
Yan Zhulanow a7071344f5 EA-219152 (partially): Provide correct PropertyDescriptor for _field 2020-02-14 17:35:18 +09:00
Yan Zhulanow 9c889aab17 EA-213309: Eliminate "Invalid method id" exception 2020-02-14 17:35:18 +09:00
Yan Zhulanow f6b62f2299 Minor: extract wrapEvaluateException() 2020-02-14 17:35:18 +09:00
Yan Zhulanow 3027fab238 EA-218160: Force-box only assignment l-values 2020-02-14 17:35:18 +09:00
Yan Zhulanow d539a870ed EA-214668, EA-209980: Use StackFrameProxyImpl with safe implementation of thisObject() 2020-02-14 17:35:18 +09:00
Yan Zhulanow fabbfdc7f8 EA-214654: Add missing read action 2020-02-14 17:35:18 +09:00
Yan Zhulanow dc71ab5bb3 EA-211010: Fix receiver parameter name for lambdas passed as value arguments 2020-02-14 17:35:18 +09:00
Yan Zhulanow 615d24bbd2 Minor: Rename KotlinStepOverInlineFilter to KotlinStepOverFilter 2020-02-14 17:35:17 +09:00
Yan Zhulanow f129ab55c5 Debugger: Rewrite step out action
This commit fixes the following tests:
 - KotlinSteppingTestGenerated.Custom.testStepOutInlineFunctionStdlib
 - KotlinSteppingTestGenerated.StepOut.testStepOutSeveralInlineArgumentDeepest
2020-02-14 17:35:17 +09:00
Yan Zhulanow f115bde682 Debugger, BE: Provide Java-like stepping for 'for' loops
- Visit '}' instead of 'for' keyword on post-condition
- Visit 'for' keyword on pre-condition
2020-02-14 17:35:17 +09:00
Yan Zhulanow 9cba72d5dd Debugger: Remove flaky sleep-based stepping tests 2020-02-14 17:35:17 +09:00
Yan Zhulanow 01a6e7abf3 Debugger, eval4j: Remove eager class loading in findField() (KT-35354) 2020-02-14 17:35:17 +09:00
Yan Zhulanow 8f29f8bc9d Debugger: Rewrite step over action (KT-14296)
The main goal is to make behavior similar to what happens in Java. For instance, now we always skip lambdas.
Also, we can reliably use '$i$f' and '$i$a' synthetic local variables. There is no need in complicated hacks any more.
2020-02-14 17:35:17 +09:00
Yan Zhulanow b7449c2d6e Debugger, minor: Move Action to its own file, rename to KotlinStepAction 2020-02-14 17:35:17 +09:00
Yan Zhulanow dd4a8d01c9 Debugger: Remove obsolete hacks needed for old Android dex 2020-02-14 17:35:16 +09:00
Yan Zhulanow dd743f05c1 Debugger: Remove/change tests for the deprecated Android dex 2020-02-14 17:35:16 +09:00
Yan Zhulanow f912602ddc Debugger, minor: Move KotlinSourcePosition to top level 2020-02-14 17:35:16 +09:00
Yan Zhulanow 2df646e273 Debugger, minor: Remove unneeded nullability dance 2020-02-14 17:35:16 +09:00
Yan Zhulanow 1a3553cdb7 Debugger: Simplify method filters, use smart pointer in KotlinLambdaMethodFilter 2020-02-14 17:35:16 +09:00
Yan Zhulanow c6262b5ff2 Debugger, minor: Fix element equivalence check in basic step filter 2020-02-14 17:35:16 +09:00
Yan Zhulanow fc09534464 Debugger, minor: move step filters to the 'filter' package 2020-02-14 17:35:16 +09:00
Yan Zhulanow d53c554c8c Debugger, minor: Add missing 'const' modifier 2020-02-14 17:35:16 +09:00
Yan Zhulanow 6d606e5291 Debugger, minor: Move createStepOverCommandWithCustomFilter() to DebuggerSteppingFilter 2020-02-14 17:35:16 +09:00
Yan Zhulanow 26371ea023 Debugger, minor: Update getActiveFilters() implementation, use prepend() 2020-02-14 17:35:16 +09:00
Vladimir Ilmov c804190f36 [COROUTINE] NPE exception fix if no DebugMetadata in target jvm exists 2020-02-03 09:16:50 +01:00
Vladimir Ilmov 7175e5a927 [COROUTINE] Extra logging removed, bug in method signature fix
Relates to #KT-34906
2020-02-03 09:16:50 +01:00
Dmitriy Dolovov 9594b8db42 Rename Kotlin/Native modules for uniformity 2020-01-29 20:30:46 +07:00
Dmitriy Dolovov b49e6ac581 Rename :kotlin-native:kotlin-native-library-reader to :native:frontend.native 2020-01-29 20:30:29 +07:00
Vladimir Ilmov e4d157c126 [coroutine] running coroutine stack frame merged with coroutine info 2020-01-28 08:40:14 +01:00
Mikhael Bogdanov 6e94eddb71 JVM_IR. Fix bridge generation 2020-01-27 14:53:36 +01:00
Vladimir Ilmov 84fd5b35eb Revert "[coroutine] For RUNNING coroutines -1 is the correct number"
This reverts commit cc317d7548.
2020-01-22 16:39:55 +01:00
Vladimir Ilmov ed09c673f8 AsyncStackTraceContext extra logging removed 2020-01-22 16:35:57 +01:00
Vladimir Ilmov cc317d7548 [coroutine] For RUNNING coroutines -1 is the correct number 2020-01-22 14:40:19 +01:00
Natalia Selezneva 606279b462 as36: Update to AS 3.6 RC (192.7142.36.36.6071332)
^KT-36005 Fixed
2020-01-21 15:56:01 +03:00
Vladimir Ilmov 7dc29a1840 Coroutine debugger starting even if registry key set to false - fixed 2020-01-21 11:39:13 +01:00
Vladimir Ilmov 9f720e576d [coroutine] ComboBox disabled as in progress 2020-01-21 11:39:13 +01:00
Vladimir Ilmov c33546f678 [coroutine] Exception fixed for SUSPEND coroutines. 2020-01-21 11:39:13 +01:00
Nikolay Krasko f01b4706d1 Switch to 193 platform 2020-01-19 12:01:53 +03:00
Alexander Udalov c3d5a88e52 Add -Xno-use-ir to compiler modules where JVM IR currently fails
This option has no effect on the production code. But in a custom
scenario of a local bootstrap, where the compiler is replaced with the
one where JVM IR backend is enabled by default, this option allows to
switch back to the old backend.

All of these arguments (except the one for compiling experimental
coroutines) are supposed to go away as soon as we fix related problems
in the JVM IR backend.
2020-01-16 12:21:47 +01:00
Vladimir Ilmov 4ff8acf5d7 POC coroutine panel removed 2020-01-15 14:02:05 +01:00
Vladimir Ilmov c8c0f3383d [debug] coroutine's stack frame locations pre-calculated on initialization 2020-01-15 14:02:05 +01:00
Alexander Udalov 9187a85aaf Rename UseExperimental->OptIn, Experimental->RequiresOptIn in quickfix and IDE tests 2020-01-14 21:04:43 +01:00
Vladimir Ilmov 092fb131e5 CodeConformanceTest @author mention in sources fixed 2020-01-14 16:06:44 +01:00
Vladimir Ilmov 553128c3c9 Coroutine as35 compatibility patch also added to 191. 2020-01-14 15:55:51 +01:00
Vladimir Ilmov e340651e47 CoroutineAsyncStackTraceProvider stack corruption fix 2020-01-14 11:49:09 +01:00