Dmitry Petrov
888b1685ed
Introduce name hints for temporary variables.
...
Split IrValue.kt into a subpackage.
2016-10-18 09:08:09 +03:00
Dmitry Petrov
ecf6ab9e25
IR:
...
- Redo smart casts handling (yet again).
Front-end typing information can't be used for expressions in IR,
since it provides inferred type for PSI expressions for the last corresponding resoled call.
- Assignments handling, initial implementation.
2016-10-18 09:08:07 +03:00
Dmitry Petrov
c4bbcadb34
IR: Collapse desugared blocks as a postprocessing pass.
2016-10-18 09:08:06 +03:00
Dmitry Petrov
aa7bf4637b
IR:
...
- function with expression bodies are desugared to blocks with return statement;
- property initializers are generated as regular expression bodies.
2016-10-18 09:08:06 +03:00
Dmitry Petrov
37cce98d19
Simplify IrElement hierarchy.
...
IrDeclaration can be now hosted under IrExpression (as IrStatement).
2016-10-18 09:08:04 +03:00
Dmitry Petrov
55eb79febf
Make IrExpression.type nullable.
2016-10-18 09:08:04 +03:00
Dmitry Petrov
030111b130
IrBody is no longer a declaration owner.
...
Local declarations in expression tree.
Call generator supports argument reordering.
2016-10-18 09:08:03 +03:00