Dmitry Petrov
96ed99d62e
JVM_IR KT-40305 no nullability assertions on built-in stubs
2020-11-30 15:49:02 +03:00
Dmitry Petrov
b2aed536c9
JVM_IR KT-39612 process subexpressions recursively in 'name' lowering
2020-11-30 15:49:02 +03:00
Dmitry Petrov
3b604cfa7f
JVM_IR KT-32701 generate multiple big arity invokes, report error later
2020-11-30 15:49:02 +03:00
Dmitry Petrov
a157b58c61
JVM_IR KT-43610 keep track of "special bridges" for interface funs
2020-11-30 15:49:01 +03:00
Alexander Udalov
7d9eeb6847
Minor, add workaround for KT-42137
2020-11-30 12:44:42 +01:00
pyos
1cccf2645f
FIR: serialize HAS_CONSTANT at least for const properties
...
Non-const properties may need them too with if the 1.4 feature
NoConstantValueAttributeForNonConstVals is disabled.
2020-11-30 13:05:28 +03:00
Mikhail Glukhikh
04d9afe83e
FIR Java: add workaround for classId = null in JavaAnnotation
2020-11-30 13:05:27 +03:00
Mikhail Glukhikh
feb13f98c0
[FIR2IR] Handle Java annotation parameter mapping properly
...
#KT-43584 Fixed
2020-11-30 13:05:26 +03:00
Mikhail Glukhikh
9b30655d66
[FIR] Load Java annotations named arguments properly (see KT-43584)
2020-11-30 13:05:23 +03:00
Dmitriy Novozhilov
cc1a0bf6d7
[FE] Update testdata
2020-11-28 14:25:57 +03:00
Dmitriy Novozhilov
406e863a73
[FE] Fix creating location of compiler errors in CLI
2020-11-28 14:25:56 +03:00
Dmitriy Novozhilov
dc364b8be4
Remove useless @author comment
2020-11-28 14:25:56 +03:00
Dmitriy Novozhilov
02f71a63b8
[FE] Disable SKIP_DEBUG flag when building java model from binaries
...
This is needed to avoid skipping jvm annotations with names of
function parameters
2020-11-28 14:25:55 +03:00
Dmitriy Novozhilov
bf1abed246
Build: add shadowing processor for core.xml in embeddable compiler
2020-11-28 14:25:54 +03:00
Dmitriy Novozhilov
986ab9cb54
Build: remove useless .as40 files
2020-11-28 14:25:54 +03:00
Dmitriy Novozhilov
5ab9710cc5
Remove ./local directory from CodeConformanceTest
2020-11-28 14:25:52 +03:00
Dmitriy Novozhilov
d3ef0eb519
Build: register missing TreeAspect service in KtParsingTestCase
2020-11-28 14:25:52 +03:00
Dmitriy Novozhilov
dc35a13008
Build: remove useless bunch files
2020-11-28 14:25:51 +03:00
Dmitriy Novozhilov
46fcc7d59d
Build: fix registration of ClassFileDecompilers extension
2020-11-28 14:25:51 +03:00
Dmitriy Novozhilov
e4e28a5495
Build: update grovy dependencies in :compiler:tests-spec
2020-11-28 14:25:48 +03:00
Dmitriy Novozhilov
eeb9b3214c
Switch to 202 platform
2020-11-28 14:25:19 +03:00
Ilmir Usmanov
78e607c6b0
Value classes: Support @JvmName annotation on functions with inline
...
classes in signatures, but not on methods of inline classes.
2020-11-28 00:34:04 +01:00
Ilmir Usmanov
871912f257
Value Classes: Increase BINARY_STUB_VERSION after decompiler changes
2020-11-27 23:52:09 +01:00
Ilmir Usmanov
05c4dfef3d
Value classes: Use 'value' keyword instead of 'inline' in stub dumps
2020-11-27 23:52:08 +01:00
Ilmir Usmanov
9b9c43b702
Value classes: Change relevant diagnostic to say 'value class'
...
instead of 'inline class'
2020-11-27 23:52:08 +01:00
Ilmir Usmanov
ca3e7cf1a7
Value classes: Report lacking @JvmInline only on JVM backend
...
Report when @JvmInline is applied on non-value class.
2020-11-27 23:52:07 +01:00
Ilmir Usmanov
92f1681de0
Value classes: treat @JvmInline value classes as inline classes
...
Report error on value classes without @JvmInline annotation.
Do not check for @JvmInline annotation in value classes since
it breaks reflection.
2020-11-27 23:52:06 +01:00
Ilmir Usmanov
361ed117bb
Value classes: Add isValue property to class descriptors
...
Reuse isInline flag in proto and IR.
Check metadata version on deserialization.
2020-11-27 23:52:05 +01:00
Ilmir Usmanov
8eff3a6bb3
Value classes: Increase stub version due to changes in the parser
2020-11-27 23:52:04 +01:00
Ilmir Usmanov
11b2a07a59
Value classes: Support 'value' modifier in parser
2020-11-27 23:52:04 +01:00
Dmitry Petrov
a206eca164
JVM_IR KT-43611 report signature clash on private interface members
2020-11-27 18:54:09 +03:00
Dmitriy Novozhilov
908732b3c1
[TEST] Move generated visualizer tests to test-gen directories
2020-11-27 12:55:48 +03:00
Dmitriy Novozhilov
eca769f8e4
[TEST] Move generated fir tests to test-gen directories
2020-11-27 12:55:48 +03:00
Dmitriy Novozhilov
1ee38286a8
[TEST] Move generated compiler tests to test-gen directory
2020-11-27 12:55:45 +03:00
Ilmir Usmanov
524419a2fe
IC Mangling: Use new mangling scheme for range tests
2020-11-27 10:56:07 +03:00
Georgy Bronnikov
6381d97aab
JVM_IR: compute classId on IR structures
2020-11-27 10:56:07 +03:00
Dmitry Petrov
ee1e05fedd
KT-42151 fix type arguments in local class constructor reference types
2020-11-26 18:40:49 +03:00
Ilmir Usmanov
9ed5b8f870
IC & Coroutines: Do not box suspend operator fun invoke receiver
...
if it is called using parens and not by calling 'invoke' method.
Use underlying type when calling continuation constructor if suspend
function is method inside inline class.
#KT-43505 Fixed
#KT-39437 Fixed
2020-11-26 15:08:56 +01:00
Ilmir Usmanov
4e334217a8
IC & Coroutines: Unbox inline class parameter of suspend lambda
...
inside 'create' if 'create' overrides 'create' from
BaseContinuationImpl. In other words, unbox the parameter if 'create'
accepts only one parameter.
#KT-43249 Fixed
#KT-43533 Fixed
2020-11-26 15:08:54 +01:00
Ilmir Usmanov
eba260f681
IC & Coroutines: Unbox inline classes of suspend lambdas
...
inside 'invoke' if 'create' does not override 'create' from
BaseContinuationImpl. In other words, when suspend lambda accepts more
than one parameter (including receiver).
Do that only if we do not generate bridge 'invoke' method, since
inline classes are unboxed in the bridge.
Use mangled name for 'create' function in this case inside 'invoke'.
#KT-43249 In progress
#KT-39847 Fixed
#KT-38937 Fixed
2020-11-26 15:08:51 +01:00
Mikhail Glukhikh
0a0b5b5d2b
[FIR DFA] Don't consider anonymous object as stable initializer to bind
...
#KT-43332 Fixed
2020-11-26 16:29:06 +03:00
Mikhail Glukhikh
1dc897346c
[FIR] Fix WRONG_IMPLIES_CONDITION problem in DFA model
2020-11-26 16:28:56 +03:00
Dmitriy Novozhilov
db9f301eed
[FE] Make DiagnosticFactory.name not null
2020-11-26 11:54:15 +03:00
Mikhail Glukhikh
d4b0bf4ad8
[FIR] Make DEFAULT positioning strategy public, drop duplicated one
2020-11-26 08:37:51 +03:00
Mikhail Glukhikh
97c1a3f270
Simplify FirSupertypeInitializedWithoutPrimaryConstructor checker
2020-11-26 08:37:51 +03:00
Mikhail Glukhikh
bf2b318bee
Simplify FirSupertypeInitializedInInterfaceChecker
2020-11-26 08:37:51 +03:00
Mikhail Glukhikh
12726cd366
FIR light builder: use type reference node as FirTypeRef source
2020-11-26 08:37:50 +03:00
Mikhail Glukhikh
d5f17ea41c
Simplify FirDelegationInInterfaceChecker
2020-11-26 08:37:50 +03:00
Mikhail Glukhikh
b673996586
Simplify source operations in FirAnnotationArgumentChecker
2020-11-26 08:37:50 +03:00
Mikhail Glukhikh
1c71e64f58
[FIR] Create string interpolating call even for single argument
...
Before this commit, questionable optimization existed which
unwrapped string interpolating call with single argument to this argument.
However, this led to source element loss and the necessity of sub-hacks.
In this commit we dropped this optimization (anyway user can remove
this single-expression string template in code if needed) to keep
source elements intact.
2020-11-26 08:37:50 +03:00