Roman Artemev
2ccd093099
Update test data
2019-03-04 23:24:18 +03:00
romanart
5d6f42e4e6
Fix rebase
2019-03-04 23:24:17 +03:00
Roman Artemev
3770d310f1
Deserialization code clean up
2019-03-04 23:24:17 +03:00
Roman Artemev
5033d99380
[JS IR BE] Update test data
2019-03-04 23:24:16 +03:00
Roman Artemev
a19bdd0c18
[JS IR BE] Refactored klibs proto files
2019-03-04 23:24:16 +03:00
Roman Artemev
cae800b24e
[JS IR BE] Fix deserialization performance
2019-03-04 23:24:15 +03:00
Roman Artemev
079f2534c7
[JS IR BE] Support compilation and tests against klib
2019-03-04 23:24:15 +03:00
Roman Artemev
b99377fd69
[JS IR BE] Fix backend to be able compile test against klib
2019-03-04 23:24:15 +03:00
Roman Artemev
b0b6b359b1
[JS IR BE] Do not produce KotlinType creating IrType
2019-03-04 23:24:14 +03:00
Roman Artemev
6863f9e4f3
[JS IR BE] Make backend be able work with unbound symbols
...
* Fix array type deserialization
* Prepare to compilation against klibs
2019-03-04 23:24:14 +03:00
Roman Artemev
2334ea2742
[JS IR BE] Support IrDynamicExpression in proto and deserializer
2019-03-04 23:24:13 +03:00
Roman Artemev
44010cc6ef
[JS IR BE] Refactored compiler interface
2019-03-04 23:24:13 +03:00
Roman Artemev
67f0d49ea1
[JS IR BE] Fix rebase
2019-03-04 23:24:13 +03:00
Roman Artemev
4ede02f5b2
[JS IR BE] Update test data
2019-03-04 23:24:12 +03:00
Roman Artemev
b2cfef4902
[JS IR BE] Lazy initialize lowering properties
2019-03-04 23:24:12 +03:00
Roman Artemev
c95d99dbe0
[JS IR BE] Use symbol instead of declaration
2019-03-04 23:24:12 +03:00
Roman Artemev
862ccd05df
[JS IR BE] Merge native fixes into Ir Serializer
2019-03-04 23:24:12 +03:00
Roman Artemev
813fef6f26
[JS IR BE] Get rid of usages of KotlinType
2019-03-04 23:24:11 +03:00
Roman Artemev
d034ce106e
[JS IR BE] Implement isPrimitiveArray with pure Ir
2019-03-04 23:24:11 +03:00
Roman Artemev
3a444cd0f3
[JS IR BE] Move IrSerializer from native to JS
...
* Fix issues
2019-03-04 23:24:10 +03:00
Roman Artemev
5384f23f30
[JS IR BE] Extract metadata deserializer to keep binary compatibility
...
* add UniqId extension to metadata protobuf
2019-03-04 23:24:10 +03:00
Roman Artemev
3718edb6bc
[JS IR BE] Some preparation for IrSerialization
2019-03-04 23:24:09 +03:00
Mikhail Glukhikh
4d19120d84
Don't report "main parameter not necessary" in objects #KT-29414 Fixed
2019-03-04 17:57:52 +03:00
Simon Ogorodnik
4882627712
Make type-system KotlinType-independent
...
- Port NewKotlinTypeChecker.equalTypes
- Decouple new-type transform from isSubtypeOf
- Port isSubtypeForSameConstructor
- Port checkSubtypeForSpecialCases
- Port isSubTypeOf without internals
- Port anySupertype
- Port isSubtypeForSameConstructor, findCorrespondingSupertypes
- Port isSubtypeOfForSingleClassifierType
- Port NullabilityChecker
- Reorder checks for performance
2019-03-04 17:27:45 +03:00
Mikhael Bogdanov
6d9c49e55e
Add IrCompileKotlinAgainstKotlinTest tests
2019-03-04 13:59:58 +01:00
Mikhail Zarechenskiy
93e79afab4
[NI] Preserve nullability of resulting type from CST if it's possible
...
Consider common supertype of `S` and `Nothing`, where `S` has nullable
upper bound or it's flexible. Before the fix, result was `S?`, which
is correct but too conservative. Now, we'll preserve nullability of
resulting type if it's already nullable.
This happened because we were failing to find path of not-nullable
types from `Nothing` to `S`, which should obviously exists by
semantics of Nothing
2019-03-04 11:29:39 +03:00
Mikhail Zarechenskiy
9b3e17f0d7
[NI] Avoid building controversial systems by clipping extra constraints
...
#KT-23854 Fixed
2019-03-04 11:29:38 +03:00
Mikhail Zarechenskiy
92b40ea9d5
[NI] Refactor adding expected type constraint
...
Add comments, make computation needed for expected type more clear
2019-03-04 11:29:38 +03:00
Mikhail Zarechenskiy
43cf6623f9
[NI] Added test for controversial common system
...
See KT-23854
2019-03-04 11:29:38 +03:00
Ilya Chernikov
db3eb5707b
Drop redundant usages of the ScriptDefinitionProvider
2019-03-02 08:10:17 +01:00
Ilya Chernikov
e99715cf82
Extract extra imports provision into an extension, implement one ...
...
for script in the plugin, drop direct dependency on scripts from
FileScopeFactory
2019-03-02 08:10:17 +01:00
Ilya Chernikov
57ac149f5b
Extract script cli evaluation to the plugin
2019-03-02 08:10:17 +01:00
Ilya Chernikov
7c3bdde102
Fix sequence of the script definitions search - explicit ones should be tried first
2019-03-02 08:10:16 +01:00
Ilya Chernikov
196e274929
Move calculating dependencies from script sources to plugin
2019-03-02 08:10:16 +01:00
Ilya Chernikov
336f43dbf2
Reorganize files and folders in the scripting plugin
2019-03-02 08:10:16 +01:00
Ilya Chernikov
adb4d264ec
Move script definition extraction functions to the plugin
...
plus finish refactoring of these functions
2019-03-02 08:10:16 +01:00
Shagen Ogandzhanian
7162dd9807
Prepare JsTestChecker (but not introduce so far) for J2V8 adoption
2019-03-01 15:29:35 +01:00
Dmitriy Novozhilov
2f5843f764
Move detecting of illegal call of contract function into call checker
...
(#KT-26153, #KT-26191) fixed
2019-03-01 14:50:46 +03:00
Dmitriy Novozhilov
54e5cce9be
Prohibit declaring multiple callsInPlace contract on same lambda.
...
#KT-26150 fixed
2019-03-01 14:50:46 +03:00
Dmitriy Novozhilov
4a7420d77d
Allow declaring contracts on suspend functions. KT-27468 Fixed
2019-03-01 14:50:46 +03:00
Dmitriy Novozhilov
84da8b6279
Report CONTRACT_NOT_ALLOWED diagnostic on extension property getter/setter
...
KT-27090
2019-03-01 14:50:46 +03:00
Dmitriy Novozhilov
b484e03fa8
Allow use contract function by FQN. #KT-29772 fixed
2019-03-01 14:50:46 +03:00
Dmitriy Novozhilov
7072b9d179
Fix order of fixing type variables for callable references. KT-25433 Fixed
2019-03-01 14:50:33 +03:00
Mikhail Glukhikh
84a3239cdf
FIR: extract "toTypeProjection"
2019-03-01 10:36:19 +03:00
Mikhail Glukhikh
f8497bc339
FIR: extract "constructType" from type resolver
2019-03-01 10:36:19 +03:00
Svyatoslav Kuzmich
e11fda1c49
[JS IR BE] Skip external methods in js default arguments stub generators
2019-02-28 20:13:56 +03:00
Svyatoslav Kuzmich
8da076c1ed
[JS IR BE] Fix basic reflection for primitive types
2019-02-28 20:13:56 +03:00
Svyatoslav Kuzmich
a01407eec9
[JS IR BE] Don't mangle Any::equals method
2019-02-28 20:13:56 +03:00
Svyatoslav Kuzmich
27005d7c2e
[JS IR BE] Basic support for external varargs
2019-02-28 20:13:56 +03:00
Svyatoslav Kuzmich
0d9218b017
[JS IR BE] Refactor namer
2019-02-28 20:13:55 +03:00