Dmitry Petrov
6889e470d1
psi2ir: minor: move array access generation code
2019-02-14 16:03:11 +03:00
Dmitry Petrov
50269d3a5c
psi2ir: minor: simplify code for dynamic array element assignment
2019-02-14 16:03:11 +03:00
Dmitry Petrov
cf29dce4c2
pri2ir: dynamic unary & binary expressions
...
NB1 Not every dynamic unary or binary expression is translated to
dynamic operator expressions literally. For example, assignments and
increments can have safe calls in LHS, which require some extra logic.
NB2 There are some open design questions left regarding how dynamic
expressions should actually be translated.
2019-02-14 16:03:11 +03:00
Dmitry Petrov
82701de87b
psi2ir: minor: drop some unused params/imports
2019-02-14 16:03:11 +03:00
Dmitry Petrov
fbbe4f6e92
psi2ir: dynamic array element get/set
2019-02-14 16:03:11 +03:00
Dmitry Petrov
9a2bd5f4e6
psi2ir: dynamic member simple assignment/augmented assignment/++/--
2019-02-14 16:03:11 +03:00
Dmitry Petrov
fc76d0970b
psi2ir: Implicit casts with 'dynamic'
2019-02-14 16:03:11 +03:00
Dmitry Petrov
3c8f52b436
psi2ir: simple dynamic member calls
2019-02-14 16:03:11 +03:00
Dmitry Petrov
ddb1ea2047
psi2ir: dynamic member access ('d.x', 'd?.x')
2019-02-14 16:03:11 +03:00
Dmitry Petrov
6e7ccfbfff
Introduce IrDynamicExpression and children
...
Dynamic expressions are represented as either operator expressions -
e.g., `d1 + d2`, `d[e]`, `d(e1, e2, e3)`, `d += e` -
where "operator" is a one of the known operators,
or as member reference expressions - e.g., `d.memberName` - where
member name is some arbitrary name (unresolved at compile-time and
represented as String).
2019-02-14 16:03:11 +03:00
Anton Bannykh
4b39e2df12
JS: (review fix) Header -> InlineData
2019-02-14 15:14:28 +03:00
Anton Bannykh
6e74c4ce71
JS: switch off the validator until class translation is fixed
2019-02-14 15:14:28 +03:00
Anton Bannykh
d7499363bc
JS: review fixes
2019-02-14 15:14:28 +03:00
Anton Bannykh
21cbc7b018
JS: add incremental test for local declarations change
2019-02-14 15:14:28 +03:00
Anton Bannykh
299a45ccbf
JS: validate AST when serializing to IC cache
2019-02-14 15:14:28 +03:00
Anton Bannykh
a0ff581a2f
JS: refactoring
2019-02-14 15:14:28 +03:00
Anton Bannykh
6d26bf9622
JS: don't load binary AST unless required by the inliner
2019-02-14 15:14:28 +03:00
Anton Bannykh
3529114913
JS: incremental translation of tests and main fun invocation
2019-02-14 15:14:28 +03:00
Toshiaki Kameyama
d583c1be58
Can be replaced with binary operator: do not suggest when receiver or argument is floating point type
...
#KT-28596 Fixed
2019-02-14 15:10:26 +03:00
victor.petukhov
2bcdadf17f
Add positive diagnostic tests for smartcasts from nullability condition using if expression
2019-02-14 13:11:14 +03:00
victor.petukhov
06b5a42d0d
Improve test exceptions fixation:
...
- exceptions is analyzed if it's specified explicitly only,
- compute test case number for diagnostic tests in which an exception is thrown.
2019-02-14 12:31:43 +03:00
victor.petukhov
317da3d481
Add NOTE and UNSPECIFIED BEHAVIOUR fields to spec tests
2019-02-14 12:31:43 +03:00
victor.petukhov
ec8a6cbe9c
Alphabetical sort wrapped intersection types for rendered diagnostics
2019-02-14 12:31:43 +03:00
victor.petukhov
acd6d354dc
Support several spec places to which tests are linked and require specify spec version for each test
2019-02-14 12:31:43 +03:00
victor.petukhov
cb5f497cbe
Alphabetical sort wrapped intersection types for rendered diagnostics
2019-02-14 12:31:42 +03:00
victor.petukhov
30762a450a
Wrap diagnostic parameters to double quotes and split by comma instead of semicolon
2019-02-14 12:31:42 +03:00
victor.petukhov
46bd5ba107
Add alphabetical sorting diagnostics with same ranges
2019-02-14 12:31:42 +03:00
victor.petukhov
fad59e200c
Code stylistic improvements in BaseDiagnosticTest
2019-02-14 12:31:42 +03:00
victor.petukhov
b354518a41
Add lazy debug diagnostic DEBUG_INFO_EXPRESSION_TYPE
2019-02-14 12:31:42 +03:00
victor.petukhov
f92232f015
Decompose and rewrite CheckerTestUtil to Kotlin
2019-02-14 12:31:42 +03:00
victor.petukhov
9e06e1eec0
Move and rename into .kt files around CheckerTestUtil for rewrite to Kotlin
2019-02-14 12:31:42 +03:00
victor.petukhov
8a9c7a69f3
Move checkType directives for tests to separate folder
2019-02-14 12:31:42 +03:00
Ilmir Usmanov
440cccae73
Loosen tail call check
...
Check that any source of ARETURN is inside a suspension point, not all
of them.
#KT-27190 Fixed
2019-02-14 12:21:44 +03:00
Denis Zharkov
abad408d7b
Do not implicitly propagate deprecations originated in Java
...
^KT-29604 Fixed
2019-02-13 16:21:05 +03:00
Ilya Chernikov
4d0261fc45
Fix parsing tests
2019-02-12 21:02:56 +01:00
Alexey Tsvetkov
dbdc7a5b07
Add verbose mode to build reports
...
#KT-12700
Verbose mode can be enabled by adding `kotlin.build.report.verbose=true`
to `gradle.properties` file.
2019-02-12 22:10:11 +03:00
Alexey Tsvetkov
01c23510c7
Print recompilation reasons in build report
2019-02-12 22:10:11 +03:00
Alexey Tsvetkov
47bb938b94
Adjust build report verbosity
2019-02-12 22:10:11 +03:00
Alexey Tsvetkov
98ef00b957
Add build reports for diagnosing build problems in Gradle
...
#KT-12700 Fixed
To turn build reports, add 'kotlin.build.report.enable=true' to
gradle.properties file
(or pass it in CLI via`-Pkotlin.build.report.enable=true`).
By default build reports are created in
`rootProject/build/reports/kotlin-build`.
Build report dir can be customized via `kotlin.build.report.dir`
property.
2019-02-12 22:10:11 +03:00
Svyatoslav Kuzmich
d0e7fb7af3
[JS IR BE] Copy Runtime IR after inline preparation passes
2019-02-12 18:45:35 +03:00
Svyatoslav Kuzmich
cfde97a7a0
[JS IR BE] Support nested external classes
2019-02-12 18:45:35 +03:00
Svyatoslav Kuzmich
0ff23544fc
[JS IR BE] Initial support for mudule wrapper generation
2019-02-12 18:45:35 +03:00
Svyatoslav Kuzmich
d8b1d09566
[JS IR BE] Support codegen for external objects and properties
2019-02-12 18:45:35 +03:00
Svyatoslav Kuzmich
53d15ea27c
[JS IR BE] Fix arrays type checks
2019-02-12 18:45:34 +03:00
Ilya Chernikov
dab97ac936
Use KotlinPaths to access jars
2019-02-10 13:35:59 +01:00
Ilya Chernikov
d0e78b95c3
Introduce classpath for compiler with scripting in KotlinPaths, fix JSR-223 for Idea
2019-02-10 13:35:58 +01:00
Ilya Chernikov
4c751cdd52
Refactor KotlinPaths - make it easier to extend and keep track of supported entities
2019-02-10 13:34:28 +01:00
Ilya Chernikov
b0c86647ed
Convert KotlinPaths to kotlin
2019-02-10 13:33:22 +01:00
Ilya Chernikov
d1da1dd410
Rename .java to .kt
2019-02-10 13:33:22 +01:00
Ilya Chernikov
c6a24c03e4
Move CliScriptDefinition provider to the plugin too, fix tests
2019-02-10 13:33:22 +01:00