Commit Graph

34749 Commits

Author SHA1 Message Date
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
Michael Bogdanov 59fc5befad !is support 2016-10-18 09:10:10 +03:00
Michael Bogdanov 12235faa39 Return proper type after cast 2016-10-18 09:10:10 +03:00
Michael Bogdanov 171e607250 Spread support 2016-10-18 09:10:10 +03:00
Michael Bogdanov e965a2b3b5 Further SyntheticJavaPropertyDescriptor support 2016-10-18 09:10:09 +03:00
Michael Bogdanov d6b5e48b2a Wrap Nothing type into return expression 2016-10-18 09:10:09 +03:00
Michael Bogdanov 5121fcb287 Initial try/catch/finally support 2016-10-18 09:10:08 +03:00
Michael Bogdanov 4bcd3d1bdb Support break/continue 2016-10-18 09:10:08 +03:00
Michael Bogdanov e5bccf0963 Support do while cycles 2016-10-18 09:10:07 +03:00
Michael Bogdanov 70dbccb95e Sealed modality support 2016-10-18 09:10:07 +03:00
Michael Bogdanov 29d1231b97 Empty vararg support and SyntheticJavaPropertyDescriptor properties 2016-10-18 09:10:06 +03:00
Michael Bogdanov 45ebe354ee Initial support of const and @JvmField properties 2016-10-18 09:10:06 +03:00
Michael Bogdanov e543972dad Properly calculate safe call receivers 2016-10-18 09:10:05 +03:00
Michael Bogdanov bc6f691405 DefaultImpls fixes 2016-10-18 09:10:05 +03:00
Michael Bogdanov c22bfaeefb Annotation class support 2016-10-18 09:10:04 +03:00
Michael Bogdanov 3fe84bba6c Initial IMPLICIT_NOT_NULL support 2016-10-18 09:10:04 +03:00
Michael Bogdanov 03ebf06cf8 Proper type for default parameters 2016-10-18 09:10:03 +03:00
Michael Bogdanov e40c434c57 Write inner class attributes 2016-10-18 09:10:03 +03:00
Michael Bogdanov 0b45655b7b Support exhaustive when 2016-10-18 09:10:02 +03:00
Michael Bogdanov a0d9d24c1f Introduced IrElseBranch 2016-10-18 09:10:01 +03:00
Michael Bogdanov 26b2a069fd Initial KClassJavaProperty support 2016-10-18 09:10:01 +03:00
Michael Bogdanov 607cf4c86d Support Nothing return type 2016-10-18 09:10:00 +03:00
Michael Bogdanov 24863a84c4 Return only onStack/none stackValues in results 2016-10-18 09:10:00 +03:00
Dmitry Petrov a51efaacc9 Introduce IrGetValue as a replacement for IrThisReference / IrGetExtensionReceiver / IrGetVariable. 2016-10-18 09:09:59 +03:00
Dmitry Petrov 8efe326904 Introduce ValueDescriptor as a common super-interface
of ParameterDescriptor and VariableDescriptor.
2016-10-18 09:09:59 +03:00
Dmitry Petrov b6c63a7823 Ignore type aliases in code generation. 2016-10-18 09:09:58 +03:00
Dmitry Petrov 2ead71ff86 Enum class is 'abstract' if it contains abstract members. 2016-10-18 09:09:58 +03:00
Michael Bogdanov 3a9f1e267b Anonymous object support 2016-10-18 09:09:57 +03:00
Michael Bogdanov 567b174e15 Funther default impl support 2016-10-18 09:09:57 +03:00
Dmitry Petrov 608d6a37d2 Some enum-related fixes
(NB: testEnumClass3 doesn't work yet, effective modality required for enum class)
2016-10-18 09:09:57 +03:00
Dmitry Petrov de2bef910b Assertion error on singleton values in ExpressionCodegen. 2016-10-18 09:09:56 +03:00
Dmitry Petrov f423369327 Objects (singletons) lowering. 2016-10-18 09:09:56 +03:00
Michael Bogdanov 866def0d20 Intrinsic fixes 2016-10-18 09:09:55 +03:00
Dmitry Petrov fc754e533d Enum classes lowering. 2016-10-18 09:09:55 +03:00
Michael Bogdanov af76840826 Support some new intrinsics 2016-10-18 09:09:54 +03:00
Michael Bogdanov 1cda60fcd1 Cast return expression to function return type 2016-10-18 09:09:54 +03:00
Michael Bogdanov f30027b4de Generate ir-accessors for interface properties 2016-10-18 09:09:53 +03:00
Michael Bogdanov 011ed60eee Support default impls 2016-10-18 09:09:53 +03:00
Dmitry Petrov 7950235df3 Lowering for constructors & initializers. 2016-10-18 09:09:52 +03:00
Michael Bogdanov 6d575c1437 'Throw' support 2016-10-18 09:09:52 +03:00
Michael Bogdanov a721876b67 Implicit cast support 2016-10-18 09:09:51 +03:00
Mikhail Glukhikh 9609c8af90 IR CFG: IrStatement is now used for CFG representation instead of IrElement 2016-10-18 09:09:51 +03:00
Mikhail Glukhikh 07eae1d206 IR to CFG: type operator unrolling 2016-10-18 09:09:50 +03:00