Steven Schäfer
0c3c0989b4
JVM IR: Don't move inaccessible const fields out of interface companions
2019-08-09 15:22:30 +02:00
Yan Zhulanow
3742425547
Move out compiler plugins from the main IDE plugin JAR (KT-31279)
2019-08-09 20:07:28 +09:00
Georgy Bronnikov
310237a8b1
Correct expected test output
2019-08-09 13:09:49 +03:00
Steven Schäfer
73d2ae961c
JVM IR: BridgeLowering boxing fixes
2019-08-09 12:14:44 +03:00
Steven Schäfer
6aa8ecd745
JVM IR: Remove bridge construction from CallableReferenceLowering
2019-08-09 12:14:44 +03:00
Ilya Gorbunov
ebb59d51d2
Fix incorrect Double.toLong conversion for infinite values in JS
...
#KT-33225 Fixed
2019-08-09 11:49:28 +03:00
Dmitriy Novozhilov
8bf61a12df
Minor. Remove UNREACHABLE_CODE slice from BindingContext
...
There was no reading from that slice, so it is redundant
2019-08-09 09:56:37 +03:00
Toshiaki Kameyama
154cf46f7c
New J2K: add ReplaceGuardClause inspection to post-processing
...
#KT-22412 Fixed
2019-08-09 00:43:28 +03:00
Nicolay Mitropolsky
51e007116f
KotlinLineMarkerProvider: ignore non-leaf elements when putting gutters (KT-28075, KT-30052, KT-33182)
...
previously for instance `KtClassBody` could get here as `leaf` and `leaf.parent` will return `KtClass` for it, making gutter for `KtClass` appear twice if origingal identifier and `KtClassBody` got here in different passes (one in "inner" other in "outer")
2019-08-08 16:38:47 +03:00
Dmitriy Novozhilov
c3ea0a1e5b
[FIR] Add forgotten visit of annotation for FirAbstractLoop
2019-08-08 15:47:24 +03:00
Mikhael Bogdanov
1eda42cb88
JVM_IR. Generate SMAP information for anonymous classes
...
#KT-28092 Fixed
2019-08-08 12:02:50 +02:00
Mikhael Bogdanov
a444a40849
JVM_IR. Basic support of 'inlineCallSiteInfo'
2019-08-08 12:02:49 +02:00
Steven Schäfer
f34a08cbbf
JVM IR: Convert interface companion fields to static fields.
2019-08-08 12:01:52 +02:00
Yan Zhulanow
e6211c4995
Debugger: Fix the compilation error in as33 bunch
2019-08-08 04:26:10 +09:00
Toshiaki Kameyama
f5c0a30c51
Add intention to replace "Map.getOrDefault"
...
#KT-21503 Fixed
2019-08-07 17:38:15 +03:00
Mikhail Zarechenskiy
e09ae645b3
Advance bootstrap version to 1.3.60-dev-770
...
Follow-up of KT-33157.
This is needed to have proper signatures in stdlib afte the fix (80acc56c10 )
2019-08-07 17:29:44 +03:00
Mikhail Zarechenskiy
9f0991f0aa
Minor, clean up type approximator a bit
2019-08-07 16:06:45 +03:00
Mikhail Zarechenskiy
04e57f712e
[NI] Introduce feature for passing function references with defaults
...
Relates to KT-8834, we continue reducing differences between old and new
inference. Note that as for `SamConversionPerArgument`, this feature
is enabled in the compiler and not in the IDE to avoid breaking code
for those users that already enabled new inference in the compiler
2019-08-07 15:58:36 +03:00
Mikhail Zarechenskiy
0219b86d06
[NI] Fix poor performance of recursive types approximation
...
#KT-32407 Fixed
2019-08-07 15:21:16 +03:00
Mikhail Zarechenskiy
5f76918c90
[NI] Use approximator as a component, don't recreate it during resolve
2019-08-07 15:21:15 +03:00
Ilya Chernikov
cddabf140b
Implement proper expression generation for the last script line
...
fixes problem with result fields
#KT-33127 fixed
2019-08-07 11:26:37 +02:00
Sergey Igushkin
ec54246b3a
Fix TCServiceMessagesClient not removing an empty line prefix on Windows
2019-08-07 12:20:13 +03:00
Steven Schäfer
471b515adb
Avoid getTopLevelClass in firMode
2019-08-07 10:34:43 +02:00
Steven Schäfer
43a27ab58c
(Un)mute tests
2019-08-07 10:34:43 +02:00
Steven Schäfer
70aee4f9e2
JVM IR: Handle -Xassertion modes
2019-08-07 10:34:43 +02:00
Steven Schäfer
7b2edc6de8
Extract simple inlining utility from ArrayConstructorLowering
2019-08-07 10:34:43 +02:00
Steven Schäfer
d11344ce2e
Add more tests for -Xassertions=jvm corner cases
2019-08-07 10:34:43 +02:00
Sergey Rostov
3e25166832
Gradle, js, karma: require webpack npm dependencies
2019-08-07 09:29:22 +03:00
Sergey Rostov
99762193f9
Gradle, js, npm: proper disambiguation classifier for npm and tools configurations
...
#KT-32293 Fixed
2019-08-07 09:29:22 +03:00
Sergey Rostov
1dc860f206
Gradle, js, npm: fix targets and compilation listener
...
#KT-32293 Fixed
2019-08-07 09:29:21 +03:00
Sergey Rostov
87e80317a0
Gradle, js, external declarations: read flags from properties
2019-08-07 09:29:21 +03:00
Jim S
88db93853f
Make context available to suppressors
...
We've found that the BindingContext is necessary for any meaningful suppressor.
This change adds the ability for suppressors to use the BindingContext when available.
Change-Id: I14d8148ef659eca273445bf0638bcdb8c3b21f02
2019-08-07 03:16:24 +03:00
Ilya Kirillov
5151659006
Do not use dummy resolving for light data classes which extend other classes
...
When using dummy resolving for creating stubs of data classes we do not have overriding information
which is needed to determine whether we need to generate synthetic members or not.
As a result of that, we may have two different versions of member scope: the first one is
resolved by dummy resolving and the second one resolved via an ordinary one.
As light methods depend on the index of them in the class body,
we can have two different methods with the same index
which breaks mapping from dummy resolved methods to normal ones.
This behaviour can be reproduced when having data class which
extends other class with some synthetic members overridden and marked as final
like described in #KT-32969
#KT-32969 fixed
2019-08-06 20:08:43 +03:00
Yan Zhulanow
39e15782b2
Debugger: Fix compatibility with AS 3.3
2019-08-07 01:15:34 +09:00
Yan Zhulanow
01805e8878
Debugger: Fix read action in 'createLineSourcePosition' (KT-33064)
2019-08-07 01:15:34 +09:00
Yan Zhulanow
8211e73f7e
Revert "Evaluator: Do not report parsing error on empty block/expression (KT-11938)"
...
KT-11938 reopened because of KT-32699.
This reverts commit 6686ed2e
2019-08-07 01:15:33 +09:00
Yan Zhulanow
d86bede293
Fix compatibility issue with the 'kotlinttest' plugin
2019-08-07 01:15:33 +09:00
Yan Zhulanow
0a092d6613
Debugger: Fix breakpoint firing in '$suspendImpl' (KT-27645)
2019-08-07 01:15:33 +09:00
Yan Zhulanow
9096d211d3
Debugger, minor: Fix line breakpoint popup (add containing declaration name)
2019-08-07 01:15:33 +09:00
Yan Zhulanow
1f13c4b87b
Parcelize: Remove remaining experimental status checks (KT-32096)
2019-08-07 01:15:33 +09:00
Yan Zhulanow
b3941c4ed0
Pill: Fix platform source attachment in compiler modules
2019-08-07 01:15:33 +09:00
Yan Zhulanow
086b151e1f
Pill: Fix project build, add kotlin-scripting-jvm-host module
2019-08-07 01:15:32 +09:00
Yan Zhulanow
89c45e9e3f
Fix stub loading for crossinline lambdas compiled by older Kotlinc (EA-105730)
...
Older kotlinc versions (1.1.5?) didn't generate the 'INNERCLASS' attribute for some anonymous classes, e.g. for 'crossinline' lambdas.
An example: 'Timer().schedule(1000) { foo () }'
Normally, stub loader checks if the class is 'ClassFileViewProvider.isInnerClass()', and ignores the class file.
Without the 'INNERCLASS' attribute this check fails. As the stub loaded isn't created to deal with anonymous classes nicely, it fails miserably.
This commit explicitly ignores classes with local visibility.
2019-08-07 01:15:32 +09:00
Yan Zhulanow
cc3f1b3501
Debugger: Fix exception in "Smart step into" for Java method calls (KT-32813)
2019-08-07 01:15:32 +09:00
Yan Zhulanow
79a5375ad1
Debugger: Fix NPE in CFA during evaluation (KT-32830)
2019-08-07 01:15:32 +09:00
Yan Zhulanow
ecce34e02b
Debugger: Fix infinite recursion in inline callable searcher (EA-108938)
2019-08-07 01:15:32 +09:00
Yan Zhulanow
ea97926c66
Debugger: Add verbose logging for EA-125569, fix possible issue
2019-08-07 01:15:32 +09:00
Yan Zhulanow
527df35bf3
Debugger: Handle case when we can't calculate the anonymous class name gracefully (EA-141202)
2019-08-07 01:15:31 +09:00
Yan Zhulanow
0f568a395f
Debugger: Recognize exceptions from target VM in FUS
2019-08-07 01:15:31 +09:00
Yan Zhulanow
71e8cddaa6
Minor: Fix NI error in KotlinPositionManager
2019-08-07 01:15:31 +09:00