Ilya Chernikov
d88e87aaac
Fix ScriptDefinition subtyping after earlier refactorings
...
#KT-41905 fixed
(may also fix other yet undetected or not analyzed problems with script
definitions)
2020-10-02 12:38:21 +02:00
Ilya Chernikov
adcfca3f98
Treat classpath extraction problems on script definition loading as warnings
...
#KT-44206 fixed
2020-10-02 12:38:21 +02:00
Vladimir Dolzhenko
741df42c18
Open build tool window on Gradle DSL errors
...
^EA-236697 Fixed
2020-10-02 10:08:49 +00:00
Dmitry Petrov
e018f2bd3e
JVM_IR more precise check for special bridges in super class
...
KT-41123
2020-10-02 12:51:49 +03:00
Mikhael Bogdanov
cf5bd38bec
JVM_IR. Support runtime string concatenation
2020-10-02 11:47:28 +02:00
Mikhael Bogdanov
1938f9459f
Support indy concatenation
2020-10-02 11:47:28 +02:00
Mikhael Bogdanov
942e1962d9
Properly process constants
2020-10-02 11:47:27 +02:00
Mikhael Bogdanov
8a1f7c5859
Add TODO
2020-10-02 11:47:27 +02:00
Mikhael Bogdanov
c329c22630
Add runtime string concat options. Some renaming
2020-10-02 11:47:27 +02:00
Mikhael Bogdanov
04012951c1
Basic invokedynamic string concatenation support
2020-10-02 11:47:27 +02:00
Mikhael Bogdanov
88892ec65d
Introduce StringAppendGenerator
2020-10-02 11:47:27 +02:00
Mikhael Bogdanov
bf35818438
Minor. Reformat
2020-10-02 11:47:27 +02:00
Mark Punzalan
b58d75440b
[FIR] Fix tests for vararg execution order after rebase.
2020-10-02 12:08:07 +03:00
Mark Punzalan
e175e87225
[FIR] Change type of argumentMapping properties and parameters from Map
...
to LinkedHashMap, to signify that the order is important and we don't
assume that mutableMapOf() will always return a LinkedHashMap.
2020-10-02 12:08:06 +03:00
Mark Punzalan
6b83f2d70e
[FIR] Remove Candidate.oldToNewArgumentMapping and use
...
Candidate.argumentMapping instead of the Fir*Call's argumentList to
remap vararg arguments to a FirVarargArgumentExpression.
The argumentList was used to preserve the order, but we can rely on
Candidate.argumentMapping to have its keys in order.
2020-10-02 12:08:05 +03:00
Mark Punzalan
a2a4d94834
[FIR] Capture array and indices for postfix/prefix increment/decrement
...
of array element (including overloaded indexed access operators, e.g.,
`a[b, c]++`).
This prevents double-evaluation of the array and indices expressions,
which may have side-effects.
2020-10-02 12:08:03 +03:00
Mark Punzalan
eb631bc429
[FIR] Keep vararg argument order in resolved calls (KT-17691).
2020-10-02 12:08:02 +03:00
Mark Punzalan
f6ce2d893c
[FIR] Handle varargs in overloaded indexed access operator.
2020-10-02 12:08:01 +03:00
Yan Zhulanow
c471a7735e
Keep all variants of ExtensionPointImpl.registerExtension() in the pro-guarded compiler (KT-42103)
2020-10-02 17:50:23 +09:00
Toshiaki Kameyama
bcbb90dd81
"Receiver parameter is never used" inspection: don't report it when anonymous function is called with receiver
...
#KT-41246 Fixed
2020-10-02 13:32:31 +07:00
Mikhail Glukhikh
112e07814e
[FIR] Mute test after rebase
2020-10-02 08:58:01 +03:00
Mikhail Glukhikh
cc88374fd7
[FIR] Add compile Kotlin against Kotlin test group
2020-10-02 08:57:55 +03:00
Mikhail Glukhikh
582f8fe287
FIR: recursive transform annotation if it has annotation as argument
...
#KT-42344 Fixed
2020-10-02 08:57:49 +03:00
Mikhail Glukhikh
2fd752f8f6
IR interpreter: fix calculation of constant Java fields
...
#KT-42117 Fixed
2020-10-02 08:57:44 +03:00
Mikhail Glukhikh
44ebec05bb
FIR Java: support read of field constant initializers
2020-10-02 08:57:39 +03:00
Ilya Gorbunov
fafb4a7914
Use regex for case-insensitive String.replace
...
KT-41799
2020-10-02 00:29:26 +03:00
Francesco Vasco
4a0109cf44
Use StringBuilder in String.replace (2x faster)
...
KT-41799
2020-10-02 00:28:53 +03:00
Vladimir Ilmov
51a37bffff
Incorrect package name for multipart classes
2020-10-01 23:06:17 +03:00
LepilkinaElena
dc2845df10
[IR] Avoid extra lists creation during getting explicit/all parameters ( #3769 )
2020-10-01 21:19:40 +03:00
Denis Zharkov
6d7744a921
FIR2IR: Use correct origin for lazily created fake overrides
2020-10-01 17:49:02 +03:00
Denis Zharkov
26a43b253f
FIR2IR: Avoid recreation of declarations
...
They may be previously created for fake overrides
2020-10-01 17:49:02 +03:00
Denis Zharkov
ff4b6a0bf9
FIR: Fix modality computation for corner cases in FirTypeIntersectionScope
...
See org.jetbrains.kotlin.resolve.OverridingUtil#determineModalityForFakeOverride
2020-10-01 17:49:02 +03:00
Denis Zharkov
de3df799bc
FIR: Fix implicit return type computation for synthetic property+intersection
2020-10-01 17:49:02 +03:00
Denis Zharkov
754e17a28f
FIR2IR: Fix checking if accessor is allowed to have fake override
2020-10-01 17:49:02 +03:00
Denis Zharkov
70bf7063c9
FIR2IR: Add hack for delegate combinated with intersection
2020-10-01 17:49:02 +03:00
Denis Zharkov
85b8673434
FIR: Fix overload resolution with defaults
2020-10-01 17:49:02 +03:00
Denis Zharkov
4964ff0019
FIR2IR: Refine definition if we need a fake override
...
`realDeclarationSymbols` that was used before is built from klass.declarations that doesn't
contain e.g. declarations from enhancement
Next time, we should get rid of `realDeclarationSymbols` and use only
originalDeclaration.origin.fromSupertypes, but originalSymbol.callableId.classId == classId
doesn't work correctly
2020-10-01 17:49:02 +03:00
Denis Zharkov
3dfbd36f15
FIR: Unmute passing blackbox tests
2020-10-01 17:49:02 +03:00
Denis Zharkov
be6bef13d3
FIR2IR: Drop some unused declarations
2020-10-01 17:49:02 +03:00
Denis Zharkov
5c9187b270
FIR2IR: Rework fake overrides generation
...
- To discriminate what's already been generated, use the set of declaration
instead of names (it's obviously more correct)
- Make it possible to set more then one overridden (base)
2020-10-01 17:49:02 +03:00
Denis Zharkov
b241161c35
FIR2IR: Rework DelegatedMemberGenerator
...
Use scope content instead of manual traversing of declarations
2020-10-01 17:49:02 +03:00
Denis Zharkov
e311a60055
FIR: Refine FirDelegatedMemberScope
...
- Use an attribute instead of overriddenSymbol
- Use createCopyForFir because it copies type parameters
2020-10-01 17:49:02 +03:00
Denis Zharkov
28c536e511
FIR: Add temporary workaround to avoid changes in test data
...
CallableId for intersection overrides has been changed in previous commits
and many rendered FIR test data needs to be changed
But, we're going to get rid of callableId's/or fix them back for intersection overrides soon
2020-10-01 17:49:02 +03:00
Denis Zharkov
ff83555729
Minor. Optimize imports
2020-10-01 17:49:02 +03:00
Denis Zharkov
fd9c6479bf
FIR: Do not call withReplacedConeType if type is unresolved
2020-10-01 17:49:02 +03:00
Denis Zharkov
cb07ffc4fd
FIR: Clarify contracts for two versions FirClass<*>::scope
...
- One of them really creates a scope a specific type
- Another one is used for supertypes and includes creation of FirDelegatedMemberScope wrapper
2020-10-01 17:49:02 +03:00
Denis Zharkov
1adf731fc5
FIR: Minor. Use buildValueParameterCopy
2020-10-01 17:49:02 +03:00
Denis Zharkov
9696fecab5
FIR: Use refined visibility/modality for intersection overrides
2020-10-01 17:49:02 +03:00
Denis Zharkov
20bf238c27
FIR2IR: Fix signature computed for fake-overrides
...
Take into account _new owner_ of the function
Namely, if there's a substitution override from a class A<T> in its subtype B,
it will refer `B` as its owner in the signature
2020-10-01 17:49:02 +03:00
Denis Zharkov
9914b487b7
FIR: Do not load hashCode/toString/equals methods from Java interface
...
As it's done in FE 1.0, and there are subtle semantics in the language that depends on it
2020-10-01 17:49:02 +03:00