Alexander Gorshenev
0c8f0a433d
Copying kotlin-native fix
...
* commit 575cbf48c3
| Author: SvyatoslavScherbina <Svyatoslav.Scherbina@jetbrains.com >
| Date: Thu Mar 14 14:25:10 2019 +0300
|
| Optimize DescriptorReferenceDeserializer again (#2755 )
to common ir deserializer.
2019-03-15 12:48:48 +03:00
Anton Bannykh
826b9d935d
JS/JS IR: split testing tasks for the two backends
...
Run jsTest for current backend, and jsIrTest for the JS-IR backend tests
2019-03-15 12:19:33 +03:00
Dmitriy Novozhilov
b07aed7a00
[NI] Fix determination of completion mode. #KT-30406 Fixed
2019-03-15 10:39:50 +03:00
Dmitriy Novozhilov
1c92c22dee
[NI] Add support ExpectedTypeFromCast to new inference. #KT-30405 Fixed
2019-03-15 10:39:29 +03:00
Dmitriy Novozhilov
9062811231
[NI] Support @OnlyInputTypes annotation. #KT-29307 fixed
...
Also KT-26698 fixed in new inference
2019-03-15 10:39:11 +03:00
Dmitriy Novozhilov
0ba163d70b
[NI] Fix testdata of inference lambdas with SAM conversions
...
Tetdata was broken in 3e147af3c0
#KT-27565 related
2019-03-15 10:39:11 +03:00
Mark Punzalan
3585792b3b
Break out bytecodeText/conditions tests into smaller tests for if/while/do-while.
2019-03-15 08:32:22 +01:00
Mark Punzalan
9eb11ff3e9
Generate conditional jumps with optimizations for loops, if possible.
2019-03-15 08:32:22 +01:00
Mikhail Glukhikh
2aaf13e734
FIR: fix test compilation for 181 patchset
2019-03-15 10:24:15 +03:00
Ilya Gorbunov
7a038f1330
Refactor sanitizeStackTrace function to spare allocations
...
Use Arrays.copyOfRange instead of List.subList.toArray.
2019-03-15 06:26:59 +03:00
Alexander Gorshenev
ee7660065b
Changes after code review
2019-03-15 03:03:08 +03:00
Alexander Gorshenev
f8be378a65
Port of native fix to common deserializer
...
* commit 347e2dadc6
| Author: Igor Chevdar <igor.chevdar@jetbrains.com >
| Date: Wed Mar 6 12:51:40 2019 +0300
|
| [Serializer] More graceful fix of parents
2019-03-15 03:03:08 +03:00
Alexander Gorshenev
cc93239397
Commonized native and js IR serialization infrastructure
2019-03-15 03:03:08 +03:00
Mikhail Glukhikh
909a5fd32d
FIR: implement named arguments #KT-24081 Fixed
2019-03-14 18:30:13 +03:00
Mikhail Glukhikh
d65b30dd82
Fix corner-cases in ConeTypeContext / FIR builder / FIR enhancements
...
This fixes a pack of FIR smoke diagnostic tests, now all of them pass
Related to KT-29962
2019-03-14 18:30:12 +03:00
Mikhail Glukhikh
8ea347653b
Remove some FirElement.session usages in FIR resolve
2019-03-14 18:23:25 +03:00
Mikhail Glukhikh
63cb8bb1a7
Remove FirElement.session usages from RawFirBuilder & around
...
Related to KT-30187
2019-03-14 18:23:11 +03:00
Mikhail Glukhikh
e6bb920a1d
FIR Java: support Kotlin extension overriding: at last, #KT-29937 Fixed
2019-03-14 18:18:40 +03:00
Mikhail Glukhikh
d00d078b4f
FIR Java: implement "appendErasedType" thus adding predefined signatures
...
Related to KT-29937
2019-03-14 18:18:20 +03:00
Mikhail Glukhikh
43d06f85e3
Add raw type comparison for Java (J2K mapping is taken into account)
...
NB: Java enhancement scope does not perform substitution, so we could
have some duplicates inside "type enhancement" testData
Related to KT-29937
2019-03-14 18:17:58 +03:00
Mikhail Glukhikh
f5e2cd2ac4
No override check in FirClassUseSiteScope, fix nasty substitution bug
...
This fixes MPP override test
(see mppFakeOverride in FirMultiModuleResolveTestGenerated)
2019-03-14 18:17:44 +03:00
Mikhail Glukhikh
de14dd1b9f
FIR type enhancements: more accurate * handling
2019-03-14 18:17:31 +03:00
Mikhail Glukhikh
c708171add
FIR type enhancements: support annotations for default parameter values
...
Related to KT-29937
2019-03-14 18:17:17 +03:00
Mikhail Glukhikh
5f3a01c25a
Get rid of FirElement.session usages inside fir:java
2019-03-14 18:16:58 +03:00
Mikhail Glukhikh
6c12fabf74
FIR: make JavaClassEnhancementScope use-site, get rid of scope providers
...
Related to KT-29937
2019-03-14 18:09:41 +03:00
Mikhail Glukhikh
e0348b56a1
FIR type enhancement: extract indexed Java type qualifiers
2019-03-14 18:08:16 +03:00
Mikhail Glukhikh
be412baf9f
FIR type enhancement: fold flexible types when it's possible
...
Related to KT-29937
2019-03-14 18:08:01 +03:00
Mikhail Glukhikh
3d29b31177
FIR type enhancements: handle class qualifiers, add new JSR 305 tests
...
Related to KT-29937
2019-03-14 18:07:46 +03:00
Mikhail Glukhikh
6c8aba8039
FIR: support callable symbols in dependencies provider
...
This breaks mppFakeOverrides test because of bug in FIR fake overrides
2019-03-14 18:07:32 +03:00
Mikhail Glukhikh
33fb3d154b
FIR Java model: support static members & enum entries
...
Related to KT-29218
2019-03-14 18:07:17 +03:00
Mikhail Glukhikh
0434a55ea2
FIR: add initial JSR 305 tests for Java type enhancements
2019-03-14 17:57:28 +03:00
Mikhail Glukhikh
14fb495ab6
Support Java constructors in FIR (related to KT-29218)
2019-03-14 17:57:13 +03:00
Mikhail Glukhikh
484e67727f
JavaClassifierTypeImpl: convert to Kotlin & cleanup
2019-03-14 17:56:57 +03:00
Mikhail Glukhikh
21d19f4144
JavaClassifierTypeImpl.java -> kt
2019-03-14 17:56:41 +03:00
Mikhail Glukhikh
fb788dc4c0
Fix null Java type argument problem & add relevant test
2019-03-14 17:56:23 +03:00
Mikhail Glukhikh
7563a98999
FIR type enhancement: make J2K mapping and changed handling more exact
...
Related to KT-29937
2019-03-14 17:56:05 +03:00
Mikhail Glukhikh
9bb2278fd4
Simplify JavaClassEnhancementScope: callback -> TypeInSignature
2019-03-14 17:55:47 +03:00
Mikhail Glukhikh
226cf8e42c
FIR Java types: handle wildcard types correctly
...
Related to KT-29937, KT-29218
2019-03-14 17:55:25 +03:00
Mikhail Glukhikh
6c79b184c0
FIR Java types: add Kotlin/Java mapping & mutability enhancements
...
Related to KT-29937
2019-03-14 17:55:10 +03:00
Mikhail Glukhikh
e7ac88d326
FIR: implement Java fields (in provider, type enhancement, scopes)
...
Related to KT-29218
2019-03-14 17:54:53 +03:00
Mikhail Glukhikh
4255c9f774
Add FIR enhancement tests, fix some exceptions / problems around them
...
Test data and tests themselves are based on
compiler/testData/loadJava/compiledJava
2019-03-14 17:52:33 +03:00
Mikhail Glukhikh
f31faafd72
Introduce initial version of FIR Java type enhancement
...
Java type enhancement is performed by a special scope kind
Java FIR dump was added for multiplatform tests to look at enhancements
Overrides, J2K mapping, special cases does not work yet
Related to KT-29937
2019-03-14 17:51:00 +03:00
Mikhail Glukhikh
060bd1b464
Add separate FirJava elements (class, method, parameter, type reference)
...
Related to KT-29218
2019-03-14 17:40:04 +03:00
Mikhail Glukhikh
109f1938f6
FIR: make simplification around class substitution scope
2019-03-14 17:39:49 +03:00
Mikhail Glukhikh
8ac34e1a0f
Reformat: context (Java resolve)
2019-03-14 17:39:25 +03:00
Denis Zharkov
6740cdabac
Get rid of ConeAbbreviatedType::directExpansion
...
It becomes necessary after extracting supertypes resolution into a
separate phase.
But also it looks reasonable because direct expansion actually depends
on the module we are looking from.
2019-03-14 17:06:45 +03:00
Denis Zharkov
92defc2ae3
Extract supertypes resolution into a separate FIR phase
2019-03-14 17:06:45 +03:00
Steven Schäfer
3f4c5c8d53
Resolve type aliases when looking for default arguments to actual methods.
...
Change-Id: I059093c1af32fcd7a2de36c25160c352d6f03a3c
2019-03-14 14:59:34 +01:00
Toshiaki Kameyama
dfd3947856
Keyword completion: add 'fun' after 'suspend' (KT-29038)
...
#KT-29038 Fixed
2019-03-14 15:35:45 +03:00
Toshiaki Kameyama
fd262bcd8d
Smart completion: fix anonymous object code style (KT-29572)
...
#KT-29572 Fixed
2019-03-14 15:35:44 +03:00