Michael Bogdanov
23a0e19620
Fix for KT-13040: Invalid bytecode generated for extension lambda invocation with safe call
...
#KT-13040 Fixed
2016-07-09 14:55:49 +03:00
Michael Bogdanov
249be0a142
Small changes in tests to support them on Android
2016-06-28 10:12:15 +03:00
Michael Bogdanov
abc7d5101d
Fix for KT-12106: import static of reified companion object method throws IllegalAccessError
...
#KT-12106 Fixed
2016-06-27 12:31:31 +03:00
Mikhael Bogdanov
7baf70e8fa
Support reified extension properties
2016-06-24 17:05:51 +03:00
Mikhael Bogdanov
5a2e00d2ad
Base support of StackValue.Property inlining
2016-06-24 17:05:50 +03:00
Mikhael Bogdanov
6ece2b41d6
Box inline test for local delegated property
2016-05-13 19:11:23 +03:00
Michael Bogdanov
e2ae2f313c
Support test with self imports, kotlin multifile tests
2016-04-29 16:33:04 +03:00
Michael Bogdanov
68f5e4d10e
Added debug strata to test data
2016-04-20 17:07:14 +03:00
Michael Bogdanov
0a46cea799
TODO: optimize smap - do preproccessing
2016-04-20 17:07:10 +03:00
Michael Bogdanov
ff820bddc0
New source mapping
2016-04-20 17:07:06 +03:00
Dmitry Petrov
aca7050656
KT-11499 Normalize stacks on return from an inline function when the function is inlined at call site.
2016-04-08 14:52:55 +03:00
Alexey Andreev
05887f45f7
KT-7819 Implement non-local returns
2016-04-06 16:16:55 +03:00
Alexey Andreev
a6e1bd1d89
KT-7819 Borrow tests for non-local returns from JVM backend
2016-04-06 16:16:55 +03:00
Michael Bogdanov
e0adfd453f
Fix for KT-11677: Generic type signatures for local classes in inlined lambdas are not written properly
...
#KT-11677 Fixed
2016-04-04 12:07:47 +03:00
Michael Bogdanov
f5166b7aef
Support test directives in inline tests
2016-04-04 12:07:46 +03:00
Dmitry Petrov
db58ebc4b2
KT-11410: Class hierarchy for parts/facade of multi-file class.
...
Preserve static initialization semantics for parts by introducing a special "clinit trigger" class.
Insert "static initialization trigger" call to every method of a part class, remove this call on inline.
Always mangle names for private functions in multifile class parts to avoid resolution clashes on inheritance.
NB in codegen tests initializers for all non-const vals are wrapped in 'run { ... }',
so that the initializer is not a constant expression, and some static initialization code should be generated.
2016-04-01 10:13:22 +03:00
Michael Bogdanov
d0aac74e72
Fix for KT-11590: IllegalAccessError: SAM adapter generated with invalid accessibility for inline function
...
#KT-11590 Fixed
2016-03-24 14:11:25 +01:00
Michael Bogdanov
00cb2705da
Add a test verifying anonymous object transform is performed correctly with ClassBuilder.
2016-03-21 18:37:28 +03:00
Michael Bogdanov
c3d450f050
Fix for KT-11479: 1.0.2 Snapshot: CompilationException: Back-end (JVM) Internal error: Couldn't inline method call
...
#KT-11479 Fixed
2016-03-18 15:43:18 +01:00
Michael Bogdanov
b95e27fd87
Fix for KT-11478: "Couldn't inline method call" error
...
#KT-11478 Fixed
2016-03-18 11:07:47 +01:00
Michael Bogdanov
bec6126b06
Support when mapping transformation on inlining
2016-03-14 11:24:39 +03:00
Alexander Udalov
2564a2f91f
Do not include kotlin-reflect at runtime by default in codegen tests
...
Change some tests to either include reflection or to avoid using it
2016-03-09 10:25:38 +03:00
Alexander Udalov
25cebe03e9
Fix inline codegen tests after regroup and rename
2016-02-27 15:40:06 +03:00
Alexander Udalov
f7958edf21
Improve test data format for SMAP codegen tests
...
Instead of comments in a Kotlin source file, add a .smap with the contents of
the source mapping data (and possible comments)
2016-02-27 15:40:06 +03:00
Alexander Udalov
cc84aabdcf
Migrate boxInline tests to new multi-file framework
2016-02-27 15:40:05 +03:00
Michael Bogdanov
b20f49a2c4
Default body compilation for inline fun extracted from InlineCodegen to separate one
2016-02-24 14:06:29 +03:00
Michael Bogdanov
1d17bee6cc
Don't generate source mapping on inlining 'InlineOnly' functions
2016-02-19 16:08:03 +03:00
Michael Bogdanov
405c21a17e
Fix for KT-11081: Reified type parameters are lost in anonymous object in inline function when using default value parameters
...
#KT-11081 Fixed
2016-02-19 14:22:29 +03:00
Michael Bogdanov
4f0f81155a
Weaken PRIVATE_CLASS_MEMBER_FROM_INLINE diagnostic
2016-02-12 17:24:30 +03:00
Michael Bogdanov
0f90dc1649
Code clean and some refactorings in 'getLambdaIfExistsAndMarkInstructions'
2016-02-09 10:19:16 +03:00
Michael Bogdanov
b8ee2ecdac
Support extension lambda inlining in complex stack cases (nullable receiver)
2016-02-09 10:19:15 +03:00
Michael Bogdanov
bc2077bfaf
More wise lambda search during inlining
2016-02-05 15:42:46 +03:00
Denis Zharkov
889b136a68
Refine multi-file facades generation
...
Do not generate delegation from multi-file facade to inline-only functions
because they are effectively private in bytecode
#KT-10858 Fixed
2016-02-05 15:02:24 +03:00
Michael Bogdanov
d1db404959
Error diagnostic for private classes in inline functions; Fix for KT-7545: IllegalAccessError when accessing private nested class through inlined function from different package
...
#KT-7545 Fixed
2016-02-03 10:32:41 +03:00
Michael Bogdanov
5f38c1d571
Fix for KT-10729: Accessing private const field in companion object from a function in the same companion generates run-time error
2016-02-01 18:42:19 +03:00
Denis Zharkov
505dc61611
Treat extension receiver as noinline parameter
...
#KT-9574 Fixed
2016-01-29 14:36:53 +03:00
Ilya Gorbunov
d49f5b95b0
Fix deprecations in testData
2016-01-27 19:05:19 +03:00
Ilya Gorbunov
4d5ec9be3f
Drop identityEquals from builtins, compiler and tests.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
25c4453dc5
Cleanup deprecated symbol usages in testData
2016-01-22 05:54:38 +03:00
Michael Bogdanov
bf16783fb7
Fix for KT-9591: Exception on inlining
...
#KT-9591 Fixed
2016-01-21 18:44:05 +03:00
Michael Bogdanov
23480a5698
Supported inline of array convention simple cases; Fix for KT-9211: M13 an extension function that is inline, and for get(v) causes an exception when called using brackets
...
#KT-9211 Fixed
2016-01-20 17:33:50 +03:00
Michael Bogdanov
7eec1d8e1d
Skip inline lambdas in 'InlineCallSite' parameter calculation; Fix for KT-10679: Wrong outer after inline
...
#KT-10679 Fixed
2016-01-15 18:24:33 +03:00
Michael Bogdanov
607f32615f
Type uncapturing
2016-01-14 15:32:50 +03:00
Denis Zharkov
b8c79e689b
Make all nested inlined closure classes public
...
#KT-6987 Fixed
2016-01-13 19:41:59 +03:00
Michael Bogdanov
66ab1c484c
StackOverflow fix on type remapping
2016-01-13 16:57:36 +03:00
Michael Bogdanov
657b9ff808
Write enclosing method info for transformed objects
2016-01-12 15:51:57 +03:00
Michael Bogdanov
fee6d4f282
Type parameters mapping
...
#KT-10429 Fixed
2016-01-12 15:51:56 +03:00
Michael Bogdanov
f870e365fa
Removed accessors for const properties
2015-12-25 11:28:10 +03:00
Michael Bogdanov
9cad1a912a
Choose proper context for accessor generation: skip inline ones; Fix for KT-6102: Bypass synthetic accessor when inlining lambda which calls private member
...
#KT-6102 Fixed
2015-12-17 09:51:41 +03:00
Michael Bogdanov
b950bf0e6e
Fix for KT-10259: Proguard can't find generated lambda class of lambda nested inside object?.let lambda
...
#Fixed KT-10259
2015-12-11 16:14:59 +03:00