Victor Petukhov
9f31f074da
[FE 1.0] Take care callable reference candidates with recursive candidate return type
...
^KT-51844 Fixed
2022-05-09 19:23:43 +00:00
Victor Petukhov
ec6ec20728
[FE 1.0] Fix subtyping for captured integer literal types
...
^KT-50877 Fixed
2022-05-09 19:23:42 +00:00
Victor Petukhov
6c54b78574
[FE 1.0] Don't capture projections during compatibility check of supertypes to determine intersection type emptiness
2022-04-27 19:50:30 +00:00
Victor Petukhov
20a8e5d742
[FE] Determine intersection type emptiness by looking at supertypes properly: substitute their type arguments
2022-04-27 19:50:29 +00:00
Victor Petukhov
54f0794ce3
[FE] Substitute erased type parameters as covariant
2022-04-27 19:50:28 +00:00
Victor Petukhov
47d6236a2d
[FIR] Support determining emptiness of an intersection type with type parameters' types
2022-04-27 19:50:23 +00:00
Victor Petukhov
f31cf90de2
[FE 1.0] Unbind type parameter erasing from java
2022-04-27 19:50:22 +00:00
Victor Petukhov
9e9e0211eb
[FE] Check if type variable is fixed into an empty intersection type and report resolution warnings/errors if needed (completion stage)
...
^KT-51221 Fixed
2022-04-27 19:50:18 +00:00
Alexander Udalov
2e515f3945
Prohibit JVM target 1.6
...
But still compile stdlib, reflect, kotlin.test and scripting runtimes
with JVM target 1.6 to simplify migration from Kotlin 1.6 to 1.7.
#KT-45165 Fixed
2022-04-19 22:54:40 +02:00
Sergej Jaskiewicz
e1b0e27e62
[JS Legacy] Fix Unit materialization in overridden methods
...
^KT-51878 Fixed
2022-04-08 11:09:46 +00:00
Denis.Zharkov
550d24f8c6
FIR: Introduce ContextFunctionTypeParams type attribute
2022-04-06 16:05:26 +00:00
Stanislav Erokhin
f8ae097e50
Restore API used in mobile-ide/kotlin-ocswift
...
See IDEA/f53c2114c38f856bdf0ff4d01de9fffeeeb630f2 commit.
In 222+ IDEA usage of the old ErrorUtils (and other classes)
was eliminated, but not in the 211-221 versions.
Relevant Kotlin commit: b5933c70e2
Also, I noticed that stub for createUnresolvedType do not
store arguments into Error type, so I've fixed that too
2022-04-04 16:48:35 +00:00
Mikhail Glukhikh
edeb4688dc
Code cleanup: FunctionInvokeDescriptor
2022-04-04 13:08:28 +00:00
Mikhail Glukhikh
0ef32e5807
Don't create substituted copy of invoke descriptor with unchanged names
...
#KT-34919 Fixed
2022-04-04 13:08:28 +00:00
Stanislav Erokhin
7c53685de4
Restore API used in Android safeArg plugin
...
See IDEA/f53c2114c38f856bdf0ff4d01de9fffeeeb630f2 commit.
In 222+ IDEA usage of the old ErrorUtils (and other classes)
was eliminated, but not in the 211-221 versions.
Relevant Kotlin commit: b5933c70e2
Also, there is usages of UnresolvedType or ErrorType from
the org.jetbrains.kotlin.types package in the safeargs tests,
but it is difficult to restore the compatibility for them.
So, I decided that it is ok to eliminate them in the
`kt-[212|213|221]-*` branches, because it is tests and not
production
2022-04-01 12:43:16 +02:00
Ilya Chernikov
5d6e2b57a7
Sort sealed class inheritors to ensure reproducible builds with IC
...
without this sorting the inheritors field in the metadata may depend on
whether some inheritors are compiled in the IC round or not.
2022-03-30 08:35:30 +00:00
Evgeniy.Zhelenskiy
b6f2513dd2
[FIR] Introduce valueClassRepresentation to FIR
...
#KT-1179
2022-03-24 11:38:44 +00:00
Evgeniy.Zhelenskiy
28bf83ceac
[IR] Unite inline class and multi-field value class representation
...
#KT-1179
2022-03-24 11:38:43 +00:00
Evgeniy.Zhelenskiy
282ab398c6
[IR] Generify lowerings
...
#KT-1179
2022-03-24 11:38:42 +00:00
Victor Petukhov
b5933c70e2
[FE 1.0] Refactor error utils: split error entities and introduce error type and error scope kinds
2022-03-23 21:13:33 +00:00
Victor Petukhov
3aabc8d666
[FE 1.0] Substitute anonymous object's supertypes while using that in public declarations
...
^KT-46136 Fixed
2022-03-23 21:13:32 +00:00
Jinseong Jeon
476e65f934
Utilize MemberScope.findFirstFunction with name and predicate
2022-02-24 17:51:49 +01:00
Dmitriy Novozhilov
0eb526a8b4
[FE 1.0] Report warning about conflict in inherited members from deserialized dependencies
...
^KT-51194
^KT-51223 Fixed
2022-02-09 19:35:56 +03:00
Dmitriy Novozhilov
52b72a7dac
[FIR] Implement Int -> Long conversions for literals and operators over them
...
^KT-38895
^KT-50996 Fixed
^KT-51000 Fixed
^KT-51003 Fixed
^KT-51018 Fixed
2022-02-07 13:36:36 +03:00
Steven Schäfer
78d80181e2
inlineClassUtils: Fix handling of inline classes without constructors
...
Fixes KT-50992
DeclarationDescriptor.isInlineClass misidentifies inline classes without
constructors. This can happen for the ABI of inline classes with private
constructors.
2022-02-04 23:30:24 +01:00
Pavel Kirpichenkov
4eb2c2f6f1
Minor: reformat
2022-02-04 16:57:22 +03:00
Pavel Kirpichenkov
0362d4ac9f
[MPP] workaround inc/dec operator checks in expect classes
...
Implicit receiver type inside expect class is inconsistent with the
type resolved from an explicit reference inside that class. The former
one is a default class type, i.e. expect; the latter one resolves to
an actual type when either expect and actual are in the same module, or
when the sources are compiled for a particular platform.
The workaround is to manually actualize implicit receiver type for one
particular check affected by the broken subtyping.
KT-49714
2022-02-04 16:57:22 +03:00
Mikhail Glukhikh
d0fa3eb1d3
Forbid ExtensionFunctionType on functional types without parameters
...
#KT-43527 Fixed
2022-01-14 22:20:24 +03:00
Evgeniy.Zhelenskiy
e97ca2ada4
[Psi2Ir, Fir2Ir] Generate toString, hashCode, equals methods for MF VC
2022-01-14 13:51:57 +00:00
Evgeniy.Zhelenskiy
c7edc353d3
[FIX, Frontend] Fix recursive check for multi-field value classes
2022-01-14 13:51:57 +00:00
Evgeniy.Zhelenskiy
e69a973b07
[Frontend, Ir] Equality test passes
2022-01-14 13:51:57 +00:00
Dmitriy Novozhilov
e9ac24dc33
[FE 1.0] Report errors on cycles in annotation parameter types
...
^KT-47932
^KT-50753 Fixed
2022-01-14 14:26:52 +03:00
Victor Petukhov
455b3143e7
[FE 1.0] Introduce builder inference stub types checker which may report more precise and clear errors due to resolution ambiguity
...
^KT-49828 Fixed
2022-01-11 18:34:47 +03:00
Victor Petukhov
8e2b90b5db
[FE 1.0] Don't report CAST_NEVER_SUCCEEDS on stub types
...
^KT-49829 Fixed
2022-01-11 18:34:41 +03:00
Irene Dea
76b7cb3193
Fix hasCustomAttributes
2022-01-08 15:26:44 +03:00
Irene Dea
13bff10567
Fix union related failures.
2022-01-08 15:26:44 +03:00
Irene Dea
a98e2c4e03
Fix failed tests
2022-01-08 15:26:44 +03:00
Irene Dea
3c4989b672
Address JDK8/JDK6 issues with computeIfAbsent
2022-01-08 15:26:44 +03:00
Irene Dea
374d287d08
Reorganize TypeAttributeTranslatorExtension
2022-01-08 15:26:38 +03:00
Irene Dea
19bfc43bee
Fixes and refactors
2022-01-08 15:25:07 +03:00
Irene Dea
2e2e70fede
Translate attributes in TypeDeserializer
2022-01-08 15:25:07 +03:00
Irene Dea
d444978ebf
Add support for attribute serialization.
2022-01-08 15:25:07 +03:00
Irene Dea
f2a351367c
Implement unionTypeAttributes and replaceTypeAttributes in ConeInferenceContext
2022-01-08 15:25:07 +03:00
Irene Dea
56d817b49f
Union type attributes for common super type calculation
2022-01-08 15:25:07 +03:00
Irene Dea
db471ca61e
Intersect attributes for intersection types
2022-01-08 15:25:07 +03:00
Irene Dea
fad3c1f2f6
Add initial type attributes infra
2022-01-08 15:25:06 +03:00
Dmitriy Novozhilov
d9a3dd09ea
[FE 1.0] Save ModuleDescriptor in CompileTimeConstant
2021-12-21 16:36:18 +03:00
Victor Petukhov
b3943f5ab6
[FE 1.0] Process builder inference stub types with different nullability properly
...
^KT-49887 Fixed
2021-12-15 22:23:18 +03:00
Simon Ogorodnik
7b8ece8758
FIR: Make constraint injector treat stub types as type variables
2021-12-15 22:22:55 +03:00
Tianyu Geng
a5844b754e
Type Approximation: add separate flag to control approx. anonymous type
...
This extra flexibility is useful for IDE where we always want to
approximate anonymous types but may not want to approximate other local
types
2021-12-15 16:09:27 +03:00