Evgeniy.Zhelenskiy
68fb8aa2a1
[IR] Replace indexes with names for mfvc methods and fields
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:41 +00:00
Evgeniy.Zhelenskiy
b692748938
[IR] Always add getter methods to value classes even if not used
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:40 +00:00
Evgeniy.Zhelenskiy
3653c86f08
[IR] Rename static replacement of MFVC typed equals to "equals-impl0"
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:40 +00:00
Evgeniy.Zhelenskiy
38c80192f9
[IR] Support MFVC-typed properties and interfaces delegates
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:40 +00:00
Evgeniy.Zhelenskiy
4d426fc4cd
[IR] Generate not FIR_IDENTICAL box fir value classes tests
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:39 +00:00
Evgeniy.Zhelenskiy
fa4ceb4ef4
[IR] Add diagnostics to forbid annotations for MFVC-typed elements
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:39 +00:00
Evgeniy.Zhelenskiy
adee33d3e5
[IR] Forbid MFVC primary constructors default arguments
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:38 +00:00
Evgeniy.Zhelenskiy
c6e54e6433
[IR] Support object-like interaction with MFVC function references
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:37 +00:00
Evgeniy.Zhelenskiy
1660dc21b9
[IR] Refactor optimization of eliminating removing extra boxes
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:37 +00:00
Evgeniy.Zhelenskiy
f2d98eac5e
[IR] Make use a temp variable for flattened non-local non-MFVC getters
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:37 +00:00
Evgeniy.Zhelenskiy
9f01ccc304
[IR] Support user-defined equals for MFVC
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:36 +00:00
Evgeniy.Zhelenskiy
51f9f31a0a
[IR] Remove suffix from MFVC specialized equals function
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:36 +00:00
Evgeniy.Zhelenskiy
6107caa8e2
[FE1.0, FIR] Support secondary constructors for Value Classes
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:35 +00:00
Evgeniy.Zhelenskiy
8c3fa6f09f
[IR] Escape removing extra boxes if no box was are in the function
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:35 +00:00
Evgeniy.Zhelenskiy
962265531e
[IR] Weaken pressure on Local storage to fix performance issue
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:35 +00:00
Evgeniy.Zhelenskiy
89d5592622
[IR] Support function references
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:34 +00:00
Evgeniy.Zhelenskiy
b45f2baff5
[IR] Fix performance regression
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:34 +00:00
Evgeniy.Zhelenskiy
51e76aa19a
[IR] Support default arguments
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:33 +00:00
Evgeniy.Zhelenskiy
0c70b60988
[IR] Add context receiver test on MFVC
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:33 +00:00
Dmitrii Gridin
fe1647096f
[SLC] cleanup 'equals' code
...
^KT-54051
2022-11-30 12:59:12 +00:00
Dmitrii Gridin
2329bd1fe7
[SLC] SymbolLightAccessorMethod: simplify equals for psi case
...
^KT-54051
2022-11-30 12:59:12 +00:00
Dmitriy Novozhilov
5c3af11188
Advance bootstrap to 1.8.20-dev-3308
2022-11-30 12:25:20 +00:00
Artem Kobzar
67048151fb
[K/JS] Change js-call inlining strategy and + ability to referencethis safely from the js call ^Fixed KT-54134
2022-11-30 11:43:22 +00:00
Sergey Bogolepov
b1f2f733fe
[K/N] Enable dynamic driver for klib output by default
2022-11-30 11:24:41 +00:00
Sergey Bogolepov
39656209f0
[K/N] Enable klib IR phases in dynamic driver
...
Support SpecialBackendChecksPhase and CopyDefaultValuesToActualPhase
2022-11-30 11:24:41 +00:00
Sergey Bogolepov
73a52b6081
[K/N] Support CompilerOutputKind.LIBRARY in the dynamic driver
2022-11-30 11:24:40 +00:00
Sergey Bogolepov
b828672a2e
[K/N] Untie PsiToIr phase from Context
2022-11-30 11:24:40 +00:00
Sergey Bogolepov
182662f7ed
[K/N] A proper FrontendPhase
...
Rewrite frontend compiler phase using the new machinery.
As a side effect, some lateinit context properties are not lazy anymore.
2022-11-30 11:24:39 +00:00
Sergey Bogolepov
4bae6d794c
[K/N] Introduce PhaseEngine and PhaseContext
...
These two classes represents a core of a new dynamic K/N driver.
2022-11-30 11:24:39 +00:00
Sergey Bogolepov
0b2bc06870
Extract ErrorReportingContext from CommonBackendContext
2022-11-30 11:24:39 +00:00
Sergey Bogolepov
c22cad07ed
Introduce FlexiblePhaseConfig
...
For dynamic Kotlin/Native driver we need a PhaseConfigurationService
that does not force us to provide a list of phases upfront.
2022-11-30 11:24:38 +00:00
Sergey Bogolepov
cd3dece726
Introduce SimpleNamedCompilerPhase
...
Dynamic Kotlin/Native compiler driver relies on a more "pure"
approach when data is explicitly passed between different phases.
SameTypeNamedCompilerPhase is not suitable for this purpose, so we need
a new type for that.
2022-11-30 11:24:38 +00:00
Yahor Berdnikau
2fac6fb125
Revert "Native: fix benchmarksAnalyzer build configuration"
...
This reverts commit 6979271998 .
Better approach via JVM toolchain was added in this commit: 737fdf31f9
Toolchain approach ensures both Java and Kotlin compilation are using
the same JDK version.
2022-11-30 12:02:59 +01:00
Vladimir Sukharev
b883dc5434
[KT-39120] Add "-fmodules" argument support to Cinterop
...
Merge-request: KT-MR-6921
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2022-11-30 08:46:40 +00:00
Yan Zhulanow
10fc86ef92
[FE] Add tests for 'containingClassForStaticMemberAttr'
2022-11-30 04:12:28 +00:00
Yan Zhulanow
4489ccf864
Simplify registering new debug diagnostics in FirDiagnosticsHandler
2022-11-30 04:12:27 +00:00
Yan Zhulanow
c7f9d7f027
[FE] Pass the derived class tag to more places (KTIJ-22808)
2022-11-30 04:12:27 +00:00
Yan Zhulanow
0e050ae7f1
[FE] Consider derived class tag on caching substitution scopes
2022-11-30 04:12:27 +00:00
Yan Zhulanow
fe69b21aed
[FE] Fix 'containingClassForStaticMemberAttr' for fake overrides (KTIJ-22808)
2022-11-30 04:12:26 +00:00
Nikolay Lunyak
2e9f9f987b
[FIR] KT-44698: Print file:line:offset on K2 crash
...
^KT-44698 Fixed
2022-11-29 22:35:51 +00:00
Ilya Kirillov
bba5b87733
Fix binary compatibility with org.jetbrains.kotlin.descriptors.explicitParameters
2022-11-29 21:52:56 +00:00
Jinseong Jeon
8eccb552a3
Migrate descriptor-related util from IR to FE1.0
...
so that FE1.0 UAST can avoid depending on backend IR
^KTIJ-23602
2022-11-29 21:52:55 +00:00
Svyatoslav Scherbina
972a54788b
Bump Kotlin/Native version to 1.8.20-dev-3138
2022-11-29 21:21:20 +00:00
wrongwrong
2439c22ff6
Improve performance of KCallableImpl.callBy
...
#KT-55178 Fixed
Co-authored-by: Alexander Udalov <alexander.udalov@jetbrains.com >
2022-11-29 22:16:05 +01:00
Vladimir Dolzhenko
f54e7abe1d
Reduce memory footprint
...
#KTIJ-23785
2022-11-29 21:01:43 +00:00
Bogdan Mukvich
99b33747b9
Remove codebase tests from compiler tests gradle task
...
KTI-975
2022-11-29 18:53:15 +00:00
Mikhail Glukhikh
8a74c1956a
Add compiler core team as an alternative owner of JVM bytecode tests
2022-11-29 15:24:18 +00:00
Marco Pennekamp
d4e6a4ad54
[FIR] KT-54978 Prohibit explicit type arguments in property accesses
...
- Add a checker which ensures that property accesses have no explicit
type arguments. If an error on the property access's callee reference
already exists, the new error is not reported in favor of the existing
error, as the property access may have been intended to be a function
call.
- `complicatedLTGT.fir.kt`: The underlying parser issue is not yet
solved, which is why `x` is parsed as a property access with explicit
type arguments.
- `reservedExpressionSyntax` tests: This new check makes a lot of the
access expressions in these tests illegal, so valid lines have been
added and invalid lines appropriately marked with
`EXPLICIT_TYPE_ARGUMENTS_IN_PROPERTY_ACCESS` errors.
^KT-54978 fixed
2022-11-29 14:47:59 +00:00
Yahor Berdnikau
4d20b43619
Set jvm target validation to error only for builds with Gradle 8+
...
^KT54993 Fixed
2022-11-29 14:34:54 +00:00
Yahor Berdnikau
737fdf31f9
Add missing JVM toolchain into :benchmarksAnalyzer:buildSrc
...
It fixes Java and Kotlin targets non-equality.
2022-11-29 14:31:48 +00:00