Ilya Chernikov
62b9d87bfc
[minor] scripting tests improvements
2020-10-30 12:57:42 +01:00
Ilya Chernikov
af7102a586
Enable IR backend in script compiler
2020-10-30 12:57:42 +01:00
Ilya Chernikov
60246f2261
Ignore temporarily the kt22029.kts codegen test for JVM IR:
...
since it fails and I cannot fix it right now.
2020-10-30 12:57:42 +01:00
Ilya Chernikov
d7112a4500
Implement JVM IR support for scripts
2020-10-30 12:57:42 +01:00
Ilya Chernikov
01d73ba0fc
Make IrScript a statement container first, update JS support
...
The IrScript is now the IrStatementContainer with significant
statements order, and the code is adapted accordingly
2020-10-30 12:57:42 +01:00
Andrei Klunnyi
55048f40ab
Disable "Incomplete destructuring declaration"
...
^KT-43037 fixed
2020-10-30 09:33:18 +01:00
Dominik Wuttke
3acb468d48
Add a link to scope functions overview for takeIf and takeUnless
...
Co-authored-by: Dominik Wuttke <Dominik.wu@gmx.net >
2020-10-30 04:09:50 +03:00
Uzi Landsmann
f48f7c6dca
Added samples for the kotlin.system package (measureTime* functions)
...
Co-authored-by: Ilya Gorbunov <ilya.gorbunov@jetbrains.com >
2020-10-30 03:35:15 +03:00
Uzi Landsmann
15381c4662
Added samples for the kotlin.streams package
...
Co-authored-by: Uzi Landsmann <uzi.landsmann@bisnode.com >
2020-10-30 02:23:31 +03:00
Yuya Urano
18672c99ca
KT-20357: Add a sample for requireNotNull
2020-10-30 02:15:48 +03:00
Ciaran Treanor
2b03c10941
Correct small grammatical error in KDocs
...
Updated KDoc generator template to address all instances of
a grammatical error ("less" -> "fewer").
Also committed newly generate _Collections.kt, _Sequences.kt,
and _Strings.kt.
2020-10-30 01:47:06 +03:00
Ilmir Usmanov
28e148d35a
Old JVM: support init blocks in inline classes
...
#KT-28055 Fixed
2020-10-29 20:38:03 +01:00
Ilmir Usmanov
999604541e
JVM_IR: Support init blocks in inline classes
...
Put their content to constructor-impl, so they are called during
constructor call, but they are not called during boxing, because
box-impl calls <init> and not constructor-impl.
#KT-28055 In progress
2020-10-29 20:38:01 +01:00
Mikhael Bogdanov
5804f73ebd
JVM_IR. Deprecate public access to @JvmField/const fields in private companions
...
#KT-25009
2020-10-29 17:19:49 +01:00
Mikhael Bogdanov
57c9afc73a
Deprecate public access to @JvmField/const fields in private companions
...
#KT-25009
2020-10-29 17:19:49 +01:00
Alexander Udalov
8be23df668
Remove unneeded dependency of util on deserialization & reflect
...
This is probably a result of a somewhat incorrectly merged
6c37574fce .
2020-10-29 17:03:11 +01:00
Alexander Udalov
0d1bb9acaf
JVM IR: do not clear BindingContext in bytecode tool window
2020-10-29 17:02:58 +01:00
Dmitry Petrov
08b761ae7a
PSI2IR don't copy annotations for properties implemented by delegation
...
KT-43012
2020-10-29 16:23:02 +03:00
Sergey Igushkin
53004f97b1
Store processed metadata artifacts in .gradle/ rather than build/
...
This allows the files to survive Gradle's `clean` task that deletes the
`build/` directory with all its contents, which leads to the IDE losing
dependencies until next re-import.
The `.gradle` directory is chosen because Gradle creates it in every
project and it is normally included in .gitignore (or otherwise ignored
in VCS).
Related to issue #KT-39568
2020-10-29 15:59:23 +03:00
Mads Ager
dca1f4631c
[JVM_IR] Use line number 1 for multifile bridge methods.
...
This is necessary for the intellij debugger filters to hide
these bridges.
Fixes KT-41961.
2020-10-29 13:04:08 +01:00
Alexander Dudinsky
c8a8410fc5
Fix MultiModuleLineMarkerTest on Windows
2020-10-28 22:35:43 +03:00
Anton Yalyshev
d4d93b7091
Add change-notes for 1.4.20
2020-10-28 21:57:05 +03:00
Alexander Udalov
ad5b6da273
JVM IR: substitute generic type for inline class replacement function calls
...
The main change here is in `JvmInlineClassLowering.visitFunctionAccess`,
where we now store the substituted return type of the function as the
type of the call expression. Without it, the call could have a
meaningless type, e.g. some `T` which is inaccessible at that place, and
that could backfire in subsequent lowerings in codegen. For example, in
the `stringPlus.kt` test, it would prevent the code in
`FlattenStringConcatenationLowering.isStringPlusCall` from recognizing
and replacing the `String.plus` call, leading to a codegen exception.
Other changes are mostly cosmetics to make the code similar to
`visitFunctionReference`, and preventive optimizations for the case when
the substitution map is empty.
2020-10-28 16:46:28 +01:00
Mikhail Glukhikh
4a3a2ef72a
[FIR2IR] Test data fix after rebase (regular + delegated supertype)
2020-10-28 18:09:13 +03:00
Mikhail Glukhikh
60141ccbaa
[FIR] Fix Substitution scope key to avoid accidental matches
2020-10-28 18:09:12 +03:00
Mikhail Glukhikh
2dc6467b5d
[FIR] Modify signatures also from ERASED_COLLECTION_PARAMETER_SIGNATURES
...
In this commit we change value parameter type of containsAll, removeAll,
retainAll from Java collections. Originally it's Collection<?>,
we change it to Collection<T>
#KT-42340 Fixed
2020-10-28 18:09:11 +03:00
Jake Wharton
3a693e112b
Update ExperimentalPathApi annotation's SinceKotlin value to 1.4
2020-10-28 16:55:57 +03:00
Roman Golyshev
82984089f0
KT-42274 Update SOURCE_STUB_VERSION
...
This update should have been done in
4b7d34b537 commit, as it is stated in the
`KtTokens.MODIFIER_KEYWORDS_ARRAY` docs.
Shifting all modifiers by one have led resulted in incorrect modifiers
when stubs were read from the disk. Updating `SOURCE_STUB_VERSION` will
make IDEA recreate all stubs from scratch
^KT-42274 Fixed
2020-10-28 12:57:53 +00:00
Mikhail Glukhikh
80108444ec
FIR2IR: cleanup implicit cast inserter
2020-10-28 15:44:46 +03:00
Jinseong Jeon
2424f2438c
FIR2IR: towards comprehensive visits in implicit cast inserter
2020-10-28 15:44:45 +03:00
Jinseong Jeon
5f6d2c5362
FIR2IR: utilize argument conversions
2020-10-28 15:44:44 +03:00
Jinseong Jeon
f1fd3d6b5d
FIR2IR: avoid using constant -1
2020-10-28 15:44:42 +03:00
Jinseong Jeon
707e94bab5
FIR2IR: add test about coercion-to-Unit for nested when
2020-10-28 15:44:41 +03:00
Jinseong Jeon
318f4b5f02
FIR2IR: refactor implicit cast insertion, part 3: implicit not_null
2020-10-28 15:44:40 +03:00
Jinseong Jeon
8708bdec0d
FIR2IR: refactor implicit cast insertion, part 2: coerce-to-Unit
2020-10-28 15:44:39 +03:00
Jinseong Jeon
8f8ee88957
FIR2IR: refactor implicit cast insertion, part 1: implicit cast
2020-10-28 15:44:38 +03:00
Jinseong Jeon
e9a7b64ca0
FIR2IR: use AnnotationGenerator to convert file annotations
2020-10-28 15:44:37 +03:00
Mikhail Glukhikh
ef6b643b9c
[FIR2IR] Don't set WHILE_LOOP origin for blocks
2020-10-28 15:44:36 +03:00
Yan Zhulanow
eb9b5da82b
Kapt: Never mark static methods 'default' (KT-42915)
2020-10-28 21:03:26 +09:00
Toshiaki Kameyama
09e1bed5c9
Redundant 'inner' modifier: fix false positive/negative with constructor call
...
#KT-40879 Fixed
#KT-41223 Fixed
#KT-41311 Fixed
#KT-41680 Fixed
2020-10-28 18:16:57 +07:00
nataliya.valtman
e9669bf5cb
fix unstable IncrementalFileToPathConverterTest tests
2020-10-28 12:33:03 +03:00
Denis Zharkov
2589de6c49
FIR: Refine delegated members introduced to use-site scope
...
- Do not add hashCode/equals/toString
- Do not add privates and ones that are already declared
2020-10-28 11:43:25 +03:00
Denis Zharkov
2105a041a5
FIR: Optimize usages of containingClass and its implementation
2020-10-28 11:43:25 +03:00
Denis Zharkov
923bb3b674
FIR2IR: Mute failing bb test
...
^KT-42946 Open
2020-10-28 11:43:25 +03:00
Denis Zharkov
2bdb21793f
FIR: Adjust test data
2020-10-28 11:43:25 +03:00
Denis Zharkov
b6a312483a
FIR: Fix fir2symbol inconsistencies for imported properties
...
Do not copy delegateFieldSymbol because otherwise the old symbol will be rebound
to the new instance of a property
2020-10-28 11:43:25 +03:00
Denis Zharkov
09b7237ae5
FIR: Introduce importedFromObjectClassId
2020-10-28 11:43:25 +03:00
Denis Zharkov
4d9ef4d414
FIR: Get rid of CallableId::classId usages
...
Use dispatchReceiverType or containingClassAttr instead
2020-10-28 11:43:25 +03:00
Denis Zharkov
9996c983c9
FIR: Initialize dispatchReceiverType and containingClassAttr for callable members
2020-10-28 11:43:25 +03:00
Denis Zharkov
ecb89a66be
FIR: Copy attributes when copying declaration
...
Otherwise they share FirDeclarationAttributes instance that might lead
to problems when modifying only one of them
2020-10-28 11:43:25 +03:00