Mikhail Glukhikh
4608ca15eb
FIR: don't allow SEALED callable modality anymore
2021-05-12 17:50:29 +03:00
Mikhail Glukhikh
67d1c35f19
FIR: report MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED also on interfaces
2021-05-12 17:50:27 +03:00
pyos
3fc2cc410c
JVM_IR: propagate reified type parameter usages from inline lambdas
...
...to whichever class they are inlined into, not the class they are
declared in (which is not the same if the lambda is crossinline).
#KT-46584 Fixed
2021-05-12 15:09:35 +03:00
Alexander Udalov
e079fb665e
JVM IR: fix inheritance from mutable collections of Int
...
For subclasses of `AbstractMutableList<Int>` which are not inline
classes, the special bridge `remove` had a parameter of type `Int`
(mapped to JVM primitive int) before this fix. The hack in
`MethodSignatureMapper` changed this type to `Int?`, yet the body of the
special bridge still loaded it as non-nullable, which resulted in
incorrect bytecode.
It looks like a part of this hack in `BridgeLowering` was made only for
inline classes which are subclasses of mutable collections. Supposedly
it should be extended to non-inline classes, so that `remove` special
bridge would have consistent IR by the time it reaches codegen.
#KT-46516 Fixed
2021-05-12 13:58:40 +02:00
Nikolay Krasko
f30980806f
Read process streams to avoid hanging on Windows in parcelize tests
...
Could be reproduced with ParcelizeBoxTestGenerated.testKt36658 test.
2021-05-12 12:58:02 +03:00
Nikolay Krasko
818bbbbb83
Don't print to log in successful parcelize tests
2021-05-12 12:58:01 +03:00
Nikolay Krasko
b41fdd2705
Leave a clue about muted tests with directive for manual processing
2021-05-12 12:57:59 +03:00
Mads Ager
2c5a4dcb98
[JVM IR] Fix constant folding to use basic types always.
...
Fixes KT-46540.
2021-05-12 11:57:20 +02:00
Svyatoslav Scherbina
ad18d5984b
Expand comment for unsupported nested generics when exporting to Swift
...
Add links to Swift and Kotlin issue trackers.
2021-05-12 09:06:28 +00:00
Elena Lepilkina
18462445b7
[K/N][stdlib] Fixed lookaround regexes (KT-45932)
2021-05-12 09:02:24 +00:00
Ilya Goncharov
d7a87a8552
[Gradle, JS] Fixes after rebase
2021-05-12 11:57:14 +03:00
Ilya Goncharov
9412b7236e
[Gradle, JS] Refactor cacheBuilder to reuse one instance
2021-05-12 11:57:14 +03:00
Ilya Goncharov
19393948d7
[Gradle, JS] irBuildCache means ir compiler enabled
2021-05-12 11:57:14 +03:00
Ilya Goncharov
b9fc97b44f
[Gradle, JS] Add arguments for building caches
2021-05-12 11:57:14 +03:00
Ilya Goncharov
c23376f040
[Gradle, JS] Use associated compilation's caches
2021-05-12 11:57:14 +03:00
Ilya Goncharov
9723d45d27
[Gradle, JS] Add associateWith compilations to CacheBuilder
2021-05-12 11:57:14 +03:00
Ilya Goncharov
194175d2d0
[Gradle, JS] Use multiple arguments for ignoring
2021-05-12 11:57:14 +03:00
Ilya Goncharov
2d3c13f8a2
[Gradle, JS] Everytime run compiler to build caches
2021-05-12 11:57:13 +03:00
Ilya Goncharov
d66d0fd4e4
[Gradle, JS] CacheBuilder before callCompiler
2021-05-12 11:57:13 +03:00
Ilya Goncharov
249fb8393c
[Gradle, JS] Add compiler args serialization to consider in caching
2021-05-12 11:57:13 +03:00
Ilya Goncharov
c283c76130
[Gradle, JS] Add CacheBuilder for precache libraries
2021-05-12 11:57:13 +03:00
pyos
420bc6cbe8
JVM_IR: use correct types for generated inline reference wrappers
...
Doesn't change anything, but still.
2021-05-12 11:37:49 +03:00
pyos
d5d6736e67
PSI2IR/FIR2IR: do not approximate T!! before translation
...
This leads to weird effects when it's in a contravariant position,
because it's approximated by Nothing.
2021-05-12 11:37:48 +03:00
pyos
a37db99841
JVM_IR: remove a hack from InlineCallableReferenceToLambda
...
It breaks other things, the same problem is hit by FunctionReference,
and it's the translation layer's fault anyway.
#KT-46555 Fixed
2021-05-12 11:37:47 +03:00
pyos
cff74b31d4
JVM_IR: get unbound property reference receiver type from KProperty1
2021-05-12 11:37:45 +03:00
Pavel Punegov
53bf0b1c42
Update Build gradle plugin to 0.0.28
2021-05-12 10:34:36 +03:00
Pavel Punegov
540c69ab89
[native] VersionGenerator: fix error string
2021-05-12 10:34:36 +03:00
Pavel Punegov
86041096fd
Return milestone property back to support older versions of plugins
...
Older gradle plugin's NativeCompilerDownloader uses milestone property.
2021-05-12 10:34:36 +03:00
Pavel Punegov
f82c28bd79
Revert "[kotlin-gradle-plugin] workaround for old k/n artifacts"
...
This reverts commit 5c80dbfd
2021-05-12 10:34:36 +03:00
Pavel Punegov
a0d35e56a9
Revert "[tests][kotlin-gradle-plugin] workaround for old k/n artifacts"
...
This reverts commit f051119c to drop obsolete native version support
2021-05-12 10:34:35 +03:00
Pavel Punegov
fa525a8359
[native] Support milestones in meta versions
...
Add milestones to MetaVersion to replace standalone parameter in
compiler version generator. This makes native version match Kotlin one.
2021-05-12 10:34:35 +03:00
Ilmir Usmanov
c4ddf3530d
Use GETFIELD instead of unbox-impl inside inline classes
...
#KT-36783 Fixed
2021-05-12 06:50:06 +00:00
Jinseong Jeon
e5f3091f2c
FIR/UAST: commonize KotlinUFile
...
We can avoid explicit creation of UAnnotation and UImportStatement if we
use languagePlugin as a UAST element factory.
2021-05-11 21:43:02 +02:00
Jinseong Jeon
5dc0b52e38
FIR UAST: fix/test allCommentsInFile in UFile
2021-05-11 21:43:02 +02:00
Jinseong Jeon
03b5c14944
FIR UAST: enable remaining legacy test data
...
This should have been part of commit 7f627ab4
2021-05-11 21:43:02 +02:00
Tianyu Geng
302e0fa46b
FIR IDE: add quickfix AddWhenElseBranchFix
2021-05-11 21:42:45 +02:00
Jinseong Jeon
8e10b5fdec
FIR: introduce FirExpressionWithSmartcastToNull
...
This new kind of expression encompasses the nullability of the original
expression after null check (or equivalent `is Nothing?` check).
Unlike FirExpressionWithSmartcast, this expression won't be materialized
during conversion to backend IR. Also, Nothing? is discarded when
computing the intersection of possible types from smartcast info.
In that way, Nothing? is not used during resolution, while such
smartcast info is stored in it (and the expression kind itself).
2021-05-11 21:28:44 +03:00
Jinseong Jeon
8da183e4f4
FIR DFA: filter out unwanted implcations from processEqNull
...
^KT-41015 fixed
2021-05-11 21:28:43 +03:00
Xin Wang
b9209962cd
CLI: Add documentation for -J argument in kotlinc -help
2021-05-11 19:50:24 +02:00
Dmitriy Novozhilov
1407af6301
[Test] Sort failed exceptions in JUnit5Assertions.assertAll
...
This is needed to throw FileComparisonFailure first, because idea
test UI can not show multiple diff windows for multiple assertions
and shows only first, which is not useful
2021-05-11 20:07:35 +03:00
Dmitriy Novozhilov
2530ae6b3d
[Test] Split IR verification and IR dump to different handlers
2021-05-11 20:07:34 +03:00
Dmitriy Novozhilov
c9cd49d34f
[Test] Temporary remove test for KT-22379
...
This is needed because this test breaks IDE when whit file is indexed.
This test will be returned after release of new kotlin plugins for IDEA
2021-05-11 19:45:43 +03:00
Andrey Zinovyev
89f0a790c9
[lombok] Map lombok MODULE to java PackageVisibility
...
Because that's what lombok does
#KT-46469 Fixed
2021-05-11 19:18:39 +03:00
Andrey Zinovyev
468fc86a3f
[lombok] Fix fallback to config for array annotation's parameter
...
If annotation's parameter is not explicitly defined, it should be
taken from config
#KT-46529 Fixed
2021-05-11 19:18:37 +03:00
Andrey Zinovyev
57d3f98ece
[lombok] Config keys are case-insensitive
...
#KT-46531 Fixed
2021-05-11 19:18:36 +03:00
Alexander Udalov
c898805ac5
CLI: improve path relativization for compiler messages
...
On Windows, the absolute file for the root of the drive is `"C:\"`,
which differs from the absolute file for any other directory, which
doesn't end with `\`. This resulted in incorrect trimming of the first
character of the path name in `descendantRelativeTo`.
Also, do not use canonicalPath because there is no point in expanding
symbolic links here.
#KT-40979 Fixed
2021-05-11 18:44:14 +03:00
Alexander Udalov
f63dac26e6
Minor, extract ProgramWithDependencyOnCompiler for tests
...
Also use ProcessBuilder instead of GeneralCommandLine for simplicity.
2021-05-11 18:44:12 +03:00
Mads Ager
d397efb2bd
[JVM IR] Copy attributes for JVM_STATIC_WRAPPERS.
2021-05-11 16:26:04 +02:00
Mads Ager
3db5ba98ad
[JVM IR] Do not insert Nothing handling in JvmStatic wrapper.
...
Fixes KT-46568.
2021-05-11 16:26:04 +02:00
Dmitriy Novozhilov
3532ce7fbc
[Parser] Fix OOM in parsing of incorrect string literals
...
^KT-46455 Fixed
KT-34410
KT-46564
2021-05-11 16:43:29 +03:00