Commit Graph

10427 Commits

Author SHA1 Message Date
pyos 59f2aa7add JVM_IR: remove constructors of nested annotations 2019-12-23 13:59:42 +01:00
pyos 17d2fda946 JVM_IR: keep nullability when remapping type parameters 2019-12-23 14:28:05 +03:00
Mikhail Zarechenskiy e078282767 Fix ambiguity between Java and Kotlin SAM candidates
Because of incorrect flag we generated synthetic SAM candidates and got ambiguity when feature `SamConversionPerArgument` was enabled (Gradle case) because candidates for Java were duplicated

 #KT-35579 Fixed
2019-12-23 12:22:20 +03:00
Mikhail Glukhikh 99e02665b5 Add forgotten FIR test data for old FE test 2019-12-23 12:11:07 +03:00
Mikhail Glukhikh 81ac46d35d Fix FIR test data for old FE test 2019-12-23 12:02:54 +03:00
Dmitry Petrov fefdce0406 KT-35550 Generate type parameters for delegating property accessors 2019-12-23 10:10:16 +03:00
pyos 1f55b59fa3 Unmute a fixed Fir2IrText test 2019-12-20 15:12:37 +03:00
pyos 26822a0cde Minor: IGNORE_BACKEND: ANY_FIR -> IGNORE_BACKEND_FIR: ANY
for consistency with blackbox tests.
2019-12-20 15:12:36 +03:00
Mikhail Glukhikh 38a3797325 Unmute FIR2IR test (due to fixed bug in FIR) 2019-12-20 14:44:46 +03:00
pyos 2adcb5dec4 Add the ANY_FIR target for muting Fir2IrText tests 2019-12-20 13:03:39 +03:00
pyos a4b005fd5d PSI2IR: generate field writes for all val property assignments
Assuming the frontend is correct, and it hopefully is, all of them are
initializations even if not done in the owner class directly.
2019-12-20 13:03:39 +03:00
Mikhail Zarechenskiy 3840294f44 Add tests for obsolete issues
#KT-11979 Obsolete
 #KT-12898 Obsolete
 #KT-30657 Obsolete
 #KT-28446 Obsolete
2019-12-20 12:06:20 +03:00
Dmitriy Novozhilov c94dd2939e [NI] Add test for KT-32429
#KT-32429 Can't Reproduce
2019-12-20 11:33:06 +03:00
Dmitriy Novozhilov e730965bc5 [NI] Approximate intersection type in type argument to star if it's necessary
#KT-32196 Fixed
2019-12-20 11:33:06 +03:00
Dmitriy Novozhilov e466fd5196 [NI] Infer type variable to Nothing if all upper constraints are from upper bounds
#KT-32196 Fixed
2019-12-20 11:17:47 +03:00
Dmitriy Novozhilov 7fed7a840b [NI] Update some testdata broken in NI 2019-12-20 11:17:47 +03:00
Victor Petukhov c89def9e06 [minor] Update test data for 1.4 2019-12-19 19:31:32 +03:00
Ilya Chernikov ae0efa77e3 [minor] updating fir testdata 2019-12-19 16:28:45 +01:00
Mikhail Glukhikh 99489321f1 [FIR] Add forgotten test data for old FE test 2019-12-19 17:16:14 +03:00
Mikhail Glukhikh fe8d68ecc7 Use different transformers per module in FIR diagnostics tests
Before this commit, we used same transformers for all modules,
which provoked using same ScopeSession for all modules.
Now we re-create transformers for any new module.
This fixes some problems with incorrect caching in ScopeSession.

NB: this provokes ambiguities in some old FE tests,
mostly they're correct (same as old FE).
2019-12-19 17:16:14 +03:00
Ilya Chernikov 4e14d04926 [minor] fix testdata for compiler 1.4 2019-12-19 14:25:56 +01:00
Mikhail Glukhikh 99643e1b2d FIR: do not run full tower resolve on integer literal type 2019-12-19 16:03:17 +03:00
Ilya Chernikov f38bb19fc6 [minor] Fix testdata for compiler 1.4 2019-12-19 14:01:01 +01:00
Pavel Kirpichenkov ac47c0cf3c [minor] Update test data for 1.4 2019-12-19 15:18:19 +03:00
Mikhael Bogdanov 650cfeaaed Update inline tests to void PROTECTED_CALL_FROM_PUBLIC_INLINE_ERROR 2019-12-19 12:46:36 +01:00
Ilya Chernikov 8322398133 [minor] Fix testdata for compiler 1.4 2019-12-19 12:32:14 +01:00
Ilya Chernikov 45e881f03f [NI] Fix inference if inner system has only by "uninteresting" constraint
#KT-32250 fixed
2019-12-19 11:20:10 +01:00
Ilya Chernikov 3e537cfcb4 [minor] [NI] Additional test for loosing type annotations on extension functions
taken from KT-34820
2019-12-19 11:20:07 +01:00
Dmitry Petrov 09c3279cc7 PSI2IR: Infer smart cast on dispatch receiver of FAKE_OVERRIDE calls
NB here we have use derived class type with type arguments replaced
with star-projections. This emulates JVM erasure (to some degree),
but, unfortunately, that's best we can offer here at the moment.
2019-12-19 12:24:58 +03:00
Denis Zharkov e8131d6e30 Choose Java field during overload resolution with a pure Kotlin property
^KT-31244 Fixed
2019-12-19 10:53:31 +03:00
Dmitriy Novozhilov aa8578b675 Allow null operators for result and using Result as return type with enabled InlineClasses 2019-12-19 10:22:45 +03:00
Dmitriy Novozhilov ee36fb903f Allow use expression of array type as named argument for vararg 2019-12-19 10:22:44 +03:00
Alexander Udalov 0cb48999ff JVM IR: retain optional annotations as package private classes
Similarly to how it's done in the old backend (see
PackageCodegenImpl.generateClassesAndObjectsInFile and
AnnotationCodegen.genAnnotation)
2019-12-18 20:25:11 +01:00
Denis Zharkov c486fa6189 NI: Report incompatible receiver of callable reference
^KT-35535 Fixed
2019-12-18 19:33:55 +03:00
Denis Zharkov dd56c3d918 NI: Fix property references overload ambiguity
^KT-35213 Fixed
2019-12-18 19:33:55 +03:00
Alexander Gorshenev ab79c3e0a0 Properly mute (and unmute) tests for unrelated backends 2019-12-18 19:29:56 +03:00
Alexander Gorshenev dc8240c24e Expect/actual support in klibs under -Xklib-mpp 2019-12-18 19:29:56 +03:00
Alexander Udalov 218d7c31ed Remove muted tests on automatic experimental->release coroutine migration 2019-12-18 17:21:44 +01:00
Pavel Kirpichenkov ebb9f09656 [NI] Fix issues with star projection uncapturing
Prevent stack overflow during uncapturing of star projection
for parameter with recursive upper bound.
Uncapture star projections for flexible type parameters with
respect to flexible upper bound.

^KT-35210 Fixed
2019-12-18 16:19:33 +03:00
Pavel Kirpichenkov 86dc0925b1 [NI] Preserve constraint position for OnlyInputType during incorporation
Variable with complex dependency on other variable loses its
original constraint position when variable it depends on is fixed.
To prevent that, original input position is saved in incorporation
position.
2019-12-18 16:19:33 +03:00
Pavel Kirpichenkov 2fc79856a2 [NI] Fix OnlyInputTypes for captured types
Uncapture projections recursively for cases when captured type is not
top-level type or first level type argument
2019-12-18 16:19:32 +03:00
Alexander Udalov 16db3a8b5f Fix compiler and IDE tests on Experimental/RequiresOptIn
See cdbabf224f, e009c7064e
2019-12-18 14:09:06 +01:00
Georgy Bronnikov 0d8036bb14 JVM_IR: do not generate main() when extension main is present
Extension methods with signature C.main() should not cause generation
of main(args: Array<String>).
2019-12-18 15:25:57 +03:00
Georgy Bronnikov 220ea72d65 JVM_IR: add coercion for index in ArrayGet intrinsic 2019-12-18 13:03:12 +03:00
Igor Chevdar cca3f13e48 Added multi-module test on inline functions 2019-12-18 12:45:41 +03:00
Alexander Udalov 7eda60d57e Minor, add more tests on signature-polymorphic calls
Add a test on null (since null is a special case in the
PolymorphicSignature spec), and a test on a call without assignment to a
variable
2019-12-17 18:44:19 +01:00
Alexander Udalov 64d40b4743 Support JVM polymorphic signature calls to methods with void return type
#KT-32026 Fixed
2019-12-17 18:39:05 +01:00
Alexander Udalov e009c7064e Add -Xopt-in command line argument
As per https://github.com/Kotlin/KEEP/pull/201
2019-12-17 18:17:48 +01:00
Alexander Udalov 33bc3db144 Deprecate -Xexperimental compiler argument
This option is not widely used and its implementation relies on a
complicated mechanism of a module-wide metadata, which is not properly
supported in the IDE (see IdeModuleAnnotationsResolver).

 #KT-34649 Fixed
2019-12-17 18:17:48 +01:00
Mikhail Glukhikh c6db5abb14 FIR call resolve: make earlier qualifier resolver reset 2019-12-17 17:28:09 +03:00