Dmitriy Novozhilov
bc3157162d
[FE 1.0] Clarify some diagnostic messages
2022-01-18 12:47:55 +03:00
Dmitriy Novozhilov
534d84e3e5
[FE 1.0] Add links to committee YT tickets into diagnostic messages
...
^KT-39883 Fixed
^KT-44705 Fixed
^KT-44866 Fixed
^KT-47902 Fixed
^KT-49110 Fixed
2022-01-18 12:47:54 +03:00
Dmitriy Novozhilov
ca31d51a6e
[FE 1.0] Change since version of ProhibitAccessToEnumCompanionMembersInEnumConstructorCall feature to 1.8
...
^KT-49110
2022-01-18 12:47:53 +03:00
Dmitriy Novozhilov
a63f65fef1
[FE 1.0] Change since version of ProhibitNonExhaustiveIfInRhsOfElvis feature to 1.8
...
^KT-44705
2022-01-18 12:47:52 +03:00
Dmitriy Novozhilov
a99a7fd48d
[FE 1.0] Change since version of StopPropagatingDeprecationThroughOverrides feature to 1.8
...
^KT-47902
2022-01-18 12:47:51 +03:00
Jerome Prinet
3d121b2080
Bump up Gradle plugin dependencies
2022-01-18 12:22:18 +03:00
Svyatoslav Scherbina
ec3a2c9671
Native: remove cleanup landingpad if it is unused
...
Useful for ObjCExport, because most of its bridges don't use it.
2022-01-18 08:15:15 +00:00
Svyatoslav Scherbina
47a0bdc1bc
Native: remove forwardingForeignExceptionsTerminatedWith
...
It is no longer used, and was generally misdesigned.
2022-01-18 08:15:15 +00:00
Svyatoslav Scherbina
35cb897bdd
ObjCExport: use terminatingExceptionHandler by default
...
If something called from an ObjCExport bridge throws a Kotlin exception,
treat it as fatal by default and terminate the process.
This affects
* Runtime calls (managing and converting Kotlin and Obj-C references and
other types), that shouldn't throw such exceptions anyway
* User code (Kotlin function object throws Kotlin exception when
called from Swift/Obj-C).
If an exception should be handled non-fatally (e.g. forwarded to
the caller), this intention should be expressed in the code generator
explicitly.
^KT-50830
This change makes the code more simple and efficient,
and the control flow -- more explicit.
2022-01-18 08:15:14 +00:00
Svyatoslav Scherbina
bc2cc026db
ObjCExport: use ObjCExportFunctionGenerationContext when generating code
...
instead of its supertype, FunctionGenerationContext.
2022-01-18 08:15:14 +00:00
Svyatoslav Scherbina
e8e4a850d4
ObjCExport: remove state switching from callFromBridge
...
It is not required anymore.
2022-01-18 08:15:14 +00:00
Svyatoslav Scherbina
776154881b
ObjCExport: prohibit Kotlin exceptions leaking through native code back
...
If a Kotlin exceptions is thrown out of a native code in ObjCExport
(when calling Swift/Obj-C method overriding Kotlin method, or calling
Swift/Obj-C block as Kotlin function type), treat this exception as
fatal and terminate the process.
This could happen if the Kotlin exception leaked from Kotlin to native
code before.
In other words, when calling Kotlin -> Swift/Obj-C -> Kotlin, if Kotlin
exception passes from the last to the first part, terminate.
^KT-50830
2022-01-18 08:15:13 +00:00
Svyatoslav Scherbina
f7a1fa86a9
ObjCExport: introduce terminatingExceptionHandler
2022-01-18 08:15:13 +00:00
Svyatoslav Scherbina
eaa6a75de4
ObjCExport: don't generate redundant exception handler for objc_release
2022-01-18 08:15:12 +00:00
Svyatoslav Scherbina
cdfcffbd57
ObjCExport: make objc_release nounwind
...
Also replace it by an LLVM intrinsic, llvm.objc.release,
which is lowered to objc_release.
This is close to what Clang does.
2022-01-18 08:15:12 +00:00
Nikolay Krasko
0ad440f112
Revert "Use relative paths in own kotlin klib artifacts"
...
Revert because using absolute paths in inputs ruins Gradle build caches.
This reverts commit 0884782c60 .
2022-01-18 02:30:04 +03:00
Alexander Udalov
f84f3cae97
Decrease operand count in tests on invokedynamic string concat
...
Otherwise the tests are flaky for some reason; stack overflow is thrown
from psi2ir sometimes. Probably it has something to do with the fact
that the JVM stack which is used by the compiler here is around the
default limit (which is 1M).
2022-01-17 23:59:59 +01:00
Nikita Bobko
f86b201eb5
Coop dev: make it possible to depend on ':prepare:ide-plugin-dependencies:kotlin-jps-common-for-ide'
...
KT-MR-5457
2022-01-17 20:42:57 +01:00
Nikita Bobko
9ec658b0ac
[imltogradle] Fix kotlinc libs generator
...
kotlinc libs were changed from maven libs to plain JPS libs which
contain `../build/repo` jars
KT-MR-5457
2022-01-17 20:42:56 +01:00
Nikita Bobko
d2315371e0
Coop dev: fix gradle import
...
JPS modules were moved back to the kotlin plugin and no longer exist in kt-212-master
KT-MR-5457
2022-01-17 20:42:56 +01:00
Victor Petukhov
72a78eb423
Replace errors with warnings for type checker recursion on delegates
...
^KT-49477 Fixed
2022-01-17 21:27:14 +03:00
Victor Petukhov
a4a2f71fca
Introduce deprecation cycle for reporting errors on some illegal equality calls inside a builder inference call
...
^KT-43493 Fixed
2022-01-17 19:44:16 +03:00
Victor Petukhov
060af85a93
Extract checks on equality expressions into a separate checker
...
^KT-43493 Fixed
2022-01-17 19:44:16 +03:00
Dmitriy Novozhilov
598f09d7a5
[Build] Don't generate redundant modularized tests configurations for kotlin project
2022-01-17 17:59:23 +03:00
Dmitriy Novozhilov
8daf7774ba
[FIR] Properly handle when subject expression in DFA of equality calls
...
^KT-50785 Fixed
2022-01-17 17:59:23 +03:00
Dmitriy Novozhilov
57346bac54
[FIR] Properly handle flexible types during creation of DNNT
...
^KT-50788 Fixed
2022-01-17 17:59:22 +03:00
Yahor Berdnikau
be020c588c
Clarify the case when a new benchmark project should be added
...
^KT-49921 Fixed
2022-01-17 14:24:44 +00:00
Yahor Berdnikau
4fe27cce07
Add benchmarks for kotlin-graphql library.
...
This library uses Spring plus kapt.
^KT-49921 In Progress
2022-01-17 14:24:43 +00:00
Yahor Berdnikau
ee9965a139
Add more benchmarks for Duckduckgo app
...
^KT-49921 In Progress
2022-01-17 14:24:43 +00:00
Ilya Gorbunov
906a351a81
Regenerate standard library generated code
2022-01-17 15:38:27 +03:00
Yahor Berdnikau
3411012596
Fix changes in Android Java sources prevents incremental compilation
...
Such sources are attached to kapt generate stubs task to re-trigger it
on Java sources change, but they are not participate in actual stubs
generation.
^KT-50664 Fixed
2022-01-17 09:33:32 +00:00
Pavel Punegov
377b6d9204
[K/N] Fix FunctionReference lowering in coercion
...
See fix for ^KT-50204
2022-01-17 09:33:09 +00:00
Pavel Punegov
6dac9fd2a3
[K/N][test] Improve available processors test
...
Pass expected number of processors as arguments. Don't check it on
linux-arm32/64 which run remotely
2022-01-17 09:32:37 +00:00
Mikhail Glukhikh
1274e2b90a
Deprecate ExtensionFunctionType on a non-function types
...
Related to KT-43527
2022-01-14 22:20:44 +03:00
Mikhail Glukhikh
d0fa3eb1d3
Forbid ExtensionFunctionType on functional types without parameters
...
#KT-43527 Fixed
2022-01-14 22:20:24 +03:00
Mikhail Glukhikh
beb2957726
FIR: render <T> name for DELEGATE_USES_EXTENSION_PROPERTY_TYPE_PARAMETER
...
Related to KT-50183
2022-01-14 22:20:23 +03:00
Mikhail Glukhikh
a4f74f60d9
Fix apostrophes in error messages #KT-50183 Fixed
2022-01-14 22:20:23 +03:00
Mikhail Glukhikh
0f2f6334c2
Fix error message for SUPERTYPE_IS_SUSPEND_FUNCTION_TYPE
...
#KT-48907 Fixed
2022-01-14 22:20:22 +03:00
Mikhail Glukhikh
1402bb2d45
Fix error message about unsupported annotations on type parameters
...
#KT-48908 Fixed
2022-01-14 22:20:22 +03:00
Mikhail Glukhikh
230f210a2a
Fix error message for CONST_VAL_NOT_TOP_LEVEL_OR_OBJECT
...
#KT-50182 Fixed
2022-01-14 22:20:22 +03:00
Mikhail Glukhikh
37c0cad827
Minor code cleanup: resolveSupertypesByMembers
2022-01-14 22:20:21 +03:00
Mikhail Glukhikh
fdf336042b
Provide migration of Any functions via super in abstract case
...
Related to KT-38078
2022-01-14 22:20:21 +03:00
Mikhail Glukhikh
390fa682b9
Forbid calls of Any functions via super if they are overridden as abstract
...
#KT-38078 Fixed
2022-01-14 22:20:21 +03:00
Mikhail Glukhikh
b689bbf5c7
Forbid usages of super if in fact it accesses an abstract member
...
#KT-49017 Fixed
2022-01-14 22:20:21 +03:00
Elena Lepilkina
d15270b9e5
[K/N][BCE] Check indexedObject type to avoid classes without optimized get operators
2022-01-14 21:48:08 +03:00
Xin Wang
60657022e0
JVM_IR: Generate counter loop for reversed array (KT-22429)
2022-01-14 21:48:07 +03:00
Stanislav Erokhin
cd957ae774
Return some API and mark them as IDEAPluginsCompatibilityAPI
2022-01-14 16:13:27 +01:00
Evgeniy.Zhelenskiy
ec720ecfb5
[Ir, Fir2Ir] Remove unnecessary IsValue parameters of builder functions
2022-01-14 13:51:58 +00: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