Pavel Kunyavskiy
dfcf2cfa84
[K/N] Fix extracting local classes from lambda in cached inline function
...
^KT-52540
2022-06-27 14:09:27 +00:00
Denis.Zharkov
d8dad02f08
FIR: Fix internal error on SAM with not-computed return type
...
^KT-52691 Fixed
2022-06-24 08:33:22 +00:00
Ilya Gorbunov
1cfc6a8fca
Move sources of ranges to common stdlib from builtins
...
But still cherry-pick them when serializing builtins because they are
used in builtins signatures.
Merge-request: KT-MR-6488
Merged-by: Ilya Gorbunov <Ilya.Gorbunov@jetbrains.com >
2022-06-23 03:49:30 +00:00
Pavel Mikhailovskii
3766698081
KT-52743 IR: Fix null checks in Elvis operators
2022-06-22 09:11:24 +00:00
Dmitriy Novozhilov
eb453dc96b
[FIR] Expand typealiases in OverloadConflictResolver
...
^KT-52825 Fixed
2022-06-21 14:10:38 +00:00
Dmitriy Novozhilov
b73783b693
Add test for KT-52580
2022-06-21 14:10:37 +00:00
Victor Petukhov
fa7809cd80
[FE] Remove BuilderInference annotation from tests
2022-06-21 15:01:56 +02:00
Mikhail Glukhikh
966e2442c6
Add tests for KT-52745
2022-06-21 07:39:03 +00:00
Mikhael Bogdanov
41d6f0dca4
Remove ir.tree.impl from build
2022-06-20 11:42:52 +00:00
Victor Petukhov
eb19d39cbf
[FE 1.0] Build captured type's supertypes in an alternative way: use own projection type as a first supertype, then supertypes from the corresponding type parameter's upper bounds
...
The original case provoked forking a constraint system which isn't supported in K1 (K2 only). If the captured type is recursive, then type parameter's upper bounds may break subtyping due to substitution the current captured type again, into a recursive type parameter.
Note that we already have special logic for recursive captured types. See `isTypeVariableAgainstStarProjectionForSelfType`.
^KT-52782 Fixed
2022-06-18 14:04:40 +02:00
Ivan Kochurkin
02ac6110bd
[FIR] Handle more cases of implicit types in FirNoImplicitTypesHandler
2022-06-17 23:26:21 +00:00
Ivan Kochurkin
157eedca43
[FIR2IR] Create IrConst instead of IrGetField for default value param in annotation class, ^KT-52676 Fixed
2022-06-17 23:26:20 +00:00
Ivan Kochurkin
34b5ce21a1
[FIR] Fix WRONG_ANNOTATION_TARGET for annotation for block, ^KT-52175 Fixed
2022-06-17 23:26:15 +00:00
Mikhail Glukhikh
6a3be0d8ac
Add test for KT-52338 (fixed together with KT-49507)
2022-06-17 13:45:57 +00:00
Jinseong Jeon
a2da690afd
Test: add java source files as JavaSourceRoot
...
so that those can be properly populated in SingleJavaRootsIndex
2022-06-16 22:14:17 +02:00
Mikhail Glukhikh
b0a6508d4b
Handle Java base class field read properly in IR converters
...
For FE 1.0, we just change super qualifier symbol to
base class, if it's possible.
For FIR, we introduce using of super qualifier symbols for
field accesses and repeat FE 1.0 behavior here.
#KT-49507 Fixed
2022-06-16 06:51:33 +00:00
pyos
25f66b4e0e
FIR CFG: mark variables touched by not-in-place lambdas in all scopes
2022-06-15 20:05:49 +00:00
Mikhail Glukhikh
5ca730e38c
Add more tests for KT-49200
...
- exotic situation 1 field + 2 entries
- named import case
- exotic situation 2 fields + 1 entry
2022-06-15 17:20:00 +00:00
Mikhail Glukhikh
088f472117
Add test for KT-49200 deprecation
2022-06-15 17:19:58 +00:00
Steven Schäfer
194a1d1c6a
JVM IR: Start fake variables for default lambdas after initialization
...
KT-52702
2022-06-15 16:49:22 +02:00
Dmitriy Novozhilov
12ce433bc2
[FE] Don't report cycle on annotation parameters if argument is vararg or array
...
^KT-52742 Fixed
^KT-47932
2022-06-15 09:55:27 +00:00
Alexander Udalov
ec9d929532
Remove dependency of fir2ir:jvm-backend on backend.jvm.entrypoint
...
Extract JvmIrDeserializer(Impl), similarly to the existing
JvmIrSerializer(Impl). Remove `allowErrorNodes` which is always false
anyway.
2022-06-13 12:35:51 +00:00
pyos
a1f0c6208c
Add a test from KT-51950
2022-06-13 11:58:15 +02:00
Pavel Mikhailovskii
bcd8a28d4c
KT-47823 IR.JVM Fix handling of for loop ranges with inline types and break/continue/return
2022-06-10 18:42:28 +00:00
pyos
9968fa252a
FIR: fork flow on function entry, restore receivers on exit
...
^KT-52680 Fixed
2022-06-10 09:42:02 +03:00
Denis.Zharkov
9caa60d389
Revert "KT-35811: Type parameter angle brackets followed by equal sign are parsed incorrectly if whitespace is missing"
...
This reverts commit ba5c85d6
^KT-52684 Related
2022-06-09 15:44:36 +00:00
Denis.Zharkov
67f9025f9e
Add test data for parsing of complicated <..> and <..>= combinations
...
^KT-52684 Related
^KT-8263 Related
2022-06-09 15:44:35 +00:00
Mikhail Zarechenskiy
372879b8e7
[FE 1.0] Don't fail with exception on unresolved type with type argument
...
^KT-50223 Fixed
2022-06-09 08:03:35 +00:00
pyos
27c51f5f88
JVM_IR: skip SAM lambdas when computing enclosing method of objects
...
This is what Java 15+ does, and it permits accessing captured type
parameters via reflection. The alternative is to emit generic signatures
on the lambda methods, but that was disabled and I have no clue why.
^KT-52417 Fixed
2022-06-08 23:59:58 +02:00
Pavel Mikhailovskii
f81d47bad6
KT-46797 Generate generic signatures for suspendImpl
2022-06-08 16:15:08 +02:00
Sergej Jaskiewicz
eae89da540
Factor out stepping test utility functions
...
We will need them for JS stepping tests as well.
2022-06-08 13:42:07 +00:00
Steven Schäfer
dbb6144ab0
JVM IR: Avoid boxing in generic floating point equality (KT-48635)
2022-06-08 15:38:06 +02:00
Dmitriy Novozhilov
7c19f3b1ca
[Lombok] Migrate tests to new test infrastructure
2022-06-07 14:12:21 +00:00
Dmitriy Novozhilov
5d0655247f
[NoArg] Add implementation of plugin for FIR
2022-06-07 14:12:18 +00:00
Pavel Mikhailovskii
65b2cee913
KT-23397 Optimize out field for property delegate when it's safe (JVM)
2022-06-07 10:46:01 +00:00
Denis.Zharkov
eae673233b
FIR: Rework FirRegularTowerDataContexts
...
- Get rid of SPECIAL mode (just left REGULAR and class-related instead)
- Clear naming
- Restore contexts after lambda/callable reference are processed
The test has been failing before this change because after
callable reference is resolved, its tower data context has been left
erroneously in the SPECIAL-related entry
2022-06-06 09:39:29 +00:00
Ilya Gorbunov
e14ac2a062
Test kotlin-repeatable annotations on Android
...
(except for type-use annotations)
2022-06-04 10:39:37 +00:00
Nikolay Lunyak
da8a8a8988
[FIR JS] Add a Fir2IrJsText runner
2022-06-02 13:47:30 +00:00
Nikolay Lunyak
ac1fb07102
[FIR JS] Add checkers.js
2022-06-02 13:47:28 +00:00
Nikolay Lunyak
9a9beef25b
[FIR JS] Prepare the infrastructure for FIR JS tests
2022-06-02 13:47:24 +00:00
Ilmir Usmanov
f922684169
Minor. Add regression test
...
#KT-52561 Fixed
2022-06-02 13:26:24 +00:00
Denis.Zharkov
461d91a10e
FIR: Rework checking dispatch receivers applicability
...
Using `ownerLookupTag` might be wrong in case of private constuctors
of inner classes: their owner is an Inner class, but expected
dispach receiver is Outer
2022-06-01 16:02:31 +00:00
Denis.Zharkov
67e6687e89
FIR: Fix FP error on a call to constructor of a private inner class
...
Do not check dispatch receiver applicability when checking visibility
for containing class of a callee constructor
2022-06-01 16:02:30 +00:00
Denis.Zharkov
c1904004c4
FIR: Fix case when smartcast receiver is used for call to private method
...
^KT-54432 Fixed
2022-06-01 16:02:30 +00:00
Pavel Mikhailovskii
3b5179686e
KT-52592 Fix NPE from KProperty.getExtensionDelegate on property delegated to another property; make $delegate methods private
2022-06-01 14:02:28 +00:00
Sergej Jaskiewicz
e03747ea7d
[JS IR] Introduce the GENERATE_INLINE_ANONYMOUS_FUNCTIONS feature flag
2022-06-01 09:02:31 +00:00
Victor Petukhov
b472ccd358
[FE 1.0] Introduce deprecation of inferred type variable into a declared upper bound within a builder inference call
2022-05-31 14:13:29 +00:00
Victor Petukhov
848075192c
[FE 1.0] Don't use BuilderInferenceSubstitutionConstraintPosition for declared upper bound constraint with no substituted upper bound
...
It leads to further infer type variable into those upper bounds which is forbidden
Substituted upper bounds is ok because specific substituted types came from constraints of other proper positions, or if specific substituted type is from declared upper bound too, then there should be another declared upper bound with no substitution
^KT-51464 Fixed
^KT-47986 Fixed
2022-05-31 14:13:28 +00:00
Victor Petukhov
c266303197
[FE 1.0] Introduce "range until operator" language feature, and report errors on its usages till 1.8
2022-05-31 08:42:57 +00:00
Victor Petukhov
96d1f89836
[BE] Support until operator in back-ends
2022-05-31 08:42:56 +00:00