Alexander Udalov
f1cd2ee6fd
Introduce PropertyDescriptor.isDelegated, write new flag to metadata
...
#KT-8384 In Progress
2017-01-23 12:25:34 +03:00
Dmitry Petrov
b9f9894310
KT-15677 KT-15775
...
Update parser & descriptor renderer to handle parenthesized types and function types properly.
Resolve annotations in parenthesized types.
AnnotationsImpl.isEmpty() returned false for targeted annotations only
(e.g., 'fun @receiver:Ann C?.foo()').
Properly keep track of targeted annotations.
2017-01-19 09:53:17 +03:00
Mikhael Bogdanov
0a363fd1a5
Introduced test flag: JVM8_TARGET_WITH_DEFAULTS
2017-01-13 13:52:56 +01:00
Svyatoslav Scherbina
d9023bdf70
backend: move some JVM lowering to common
2017-01-12 11:56:32 +07:00
Svyatoslav Scherbina
5a5f4fc224
backend: extract common lowering utils
2017-01-12 11:56:31 +07:00
Svyatoslav Scherbina
f85538129d
backend: introduce common backend context
2017-01-12 11:56:30 +07:00
Svyatoslav Scherbina
2e88dd0675
backend: fix minor bug in LocalFunctionsLowering
...
extension receiver parameter should be remapped too
(e.g. to support lambda with receiver)
2017-01-12 11:56:29 +07:00
Svyatoslav Scherbina
e6c9a709b2
backend: fix minor bug in SharedVariablesLowering
2017-01-12 11:56:28 +07:00
Svyatoslav Scherbina
bf3b5281a9
ir.tree: add trivial building utils
2017-01-11 14:54:13 +07:00
Svyatoslav Scherbina
d0a166ffec
psi2ir: move IR building utils to ir.tree
2017-01-11 14:54:12 +07:00
Svyatoslav Scherbina
feb0dee563
psi2ir: untie IR building utils from PSI
2017-01-11 14:54:11 +07:00
Svyatoslav Scherbina
4c3fb9a21f
psi2ir: improve backing field usage generation
...
Also update corresponding tests data.
2017-01-11 14:54:10 +07:00
Svyatoslav Scherbina
0189faec2e
ir.tree: fix IrTry.transformChildren:
...
transform `finallyExpression` too.
2017-01-11 14:54:09 +07:00
Alexander Udalov
75a4958144
Introduce ClassDescriptor.getSealedSubclasses
...
#KT-12795 In Progress
2017-01-10 12:23:25 +03:00
Dmitry Petrov
d9271b54fb
Fix IR generation: temporary variable in 'hashCode()' for data class should be 'var'
2016-12-23 10:44:14 +03:00
Stanislav Erokhin
42440f50dc
Remove soft keyword coroutine & isCoroutine from ValueParameterDescriptor.
2016-12-15 23:57:56 +03:00
Stanislav Erokhin
59efedf610
Rename platform to header.
2016-12-13 18:00:00 +03:00
Mikhail Zarechenskiy
ef662a5679
Declare intrinsic rem operator for primitives
2016-12-13 16:33:33 +03:00
Alexey Andreev
ba2443bcb3
Add external property to class and property descriptors
2016-12-08 15:41:38 +03:00
Mikhail Zarechenskiy
0134b8819b
Optimize const vals by inlining them at use sites
...
#KT-11734 Fixed
#KT-13570 Fixed
2016-12-05 22:11:33 +03:00
Alexander Udalov
ce9691cd2b
Support platform/impl modifiers for properties
...
Do not allow platform properties to have backing fields, initializers, be
delegated, lateinit or const, or have accessors with bodies
2016-11-25 20:50:18 +03:00
Alexander Udalov
6e2ef9b1d2
Add platform/impl soft keywords, add isPlatform/isImpl to MemberDescriptor
2016-11-25 20:50:17 +03:00
Michael Bogdanov
fd2655fd4a
Bridge support
2016-10-27 16:43:02 +03:00
Michael Bogdanov
7989a0ff25
Use original descriptor on delegating to DefaultImpls
2016-10-27 16:43:01 +03:00
Michael Bogdanov
4cbc5cc958
Remove variables from frame on block leaving
2016-10-27 16:43:00 +03:00
Alexander Udalov
cdf6567375
Drop TypeConstructor.getAnnotations(), uninherit TypeConstructor from Annotated
...
The method was unused on TypeConstructor instances, and almost all
implementations returned EMPTY anyway
2016-10-24 15:30:38 +03:00
Dmitry Petrov
4fc135709e
Inner classes lowering: remap old constructor parameters.
2016-10-21 10:05:41 +03:00
Dmitry Petrov
7dce1f438f
Inner classes lowering.
2016-10-19 19:13:40 +03:00
Dmitry Petrov
b5d81d8e31
Preparations to push to master branch.
...
Introduce tests-ir-jvm module (for IR-based JVM BE tests).
2016-10-18 09:15:19 +03:00
Michael Bogdanov
555f3e903e
Rebase fixes
2016-10-18 09:10:20 +03:00
Michael Bogdanov
406fbfdba8
Synthetic accessors support
2016-10-18 09:10:20 +03:00
Michael Bogdanov
20c4f47253
Properly lower ImplicitClassReceiver
2016-10-18 09:10:19 +03:00
Dmitry Petrov
a93f929615
Minor: IrElementVisitorVoid#visitGetVariable -> visitGetValue
2016-10-18 09:10:19 +03:00
Dmitry Petrov
703110c0e2
Update after rebase on master.
2016-10-18 09:10:18 +03:00
Dmitry Petrov
6c9b8792c7
Minor: cleanup, use PropertyDescriptorImpl.initialize(...)
2016-10-18 09:10:18 +03:00
Dmitry Petrov
8d7c201339
Refactor special descriptors.
2016-10-18 09:10:17 +03:00
Dmitry Petrov
9b1e87ec84
Minor fixes.
2016-10-18 09:10:17 +03:00
Dmitry Petrov
a96aac090e
Shared variables lowering: skip irrelevant variables.
2016-10-18 09:10:16 +03:00
Dmitry Petrov
fb5298237a
Shared variables lowering.
2016-10-18 09:10:16 +03:00
Dmitry Petrov
fedfd3de16
Suggest names for captured receivers.
2016-10-18 09:10:15 +03:00
Michael Bogdanov
1658e110f2
Support default values for annotation properties
2016-10-18 09:10:15 +03:00
Michael Bogdanov
4b6ddc4a9d
Initial annotation support
2016-10-18 09:10:15 +03:00
Michael Bogdanov
0bc3cc5e20
Object, enum processing on delegation generation
2016-10-18 09:10:14 +03:00
Michael Bogdanov
289cc8fed7
Added extension receiver procesing on interface lowering
2016-10-18 09:10:14 +03:00
Michael Bogdanov
f0d09288a8
Initial KCallableNameProperty support
2016-10-18 09:10:13 +03:00
Michael Bogdanov
b72d7557d1
KClassJavaProperty support
2016-10-18 09:10:13 +03:00
Dmitry Petrov
5ee2f87c4a
Closure conversion: simple tests work.
2016-10-18 09:10:12 +03:00
Michael Bogdanov
6bd27e52bc
Don't wrap return and error expressions into returns
2016-10-18 09:10:12 +03:00
Michael Bogdanov
72eb317164
Further try/catch/finally support
2016-10-18 09:10:11 +03:00
Michael Bogdanov
f1ea31450e
Remove private methods from interface on lowering
2016-10-18 09:10:11 +03:00