Commit Graph

92661 Commits

Author SHA1 Message Date
Victor Petukhov 7c38f99cbf [FE 1.0] Improve error message for disabled "Unit conversions" feature
^KT-49394 Fixed
2022-05-23 12:36:25 +02:00
Victor Petukhov bbf52e8b90 [FE 1.0] Make "Unit conversions" accessible experimental feature 2022-05-23 12:36:16 +02:00
Victor Petukhov 88d35067e3 [FE 1.0] Keep the same type attributes during union or intersection type attributes
^KT-51317 Fixed
2022-05-23 12:36:12 +02:00
Victor Petukhov e009d6a074 [FIR] Fix mistake in the error message for INFERRED_TYPE_VARIABLE_INTO_EMPTY_INTERSECTION 2022-05-23 12:36:11 +02:00
Ilya Goncharov e452efe51b [Gradle, JS] environment map as input, not nested
Merge-request: KT-MR-6326
Merged-by: Ilya Goncharov <Ilya.Goncharov@jetbrains.com>

^KT-51532 fixed
2022-05-23 09:28:09 +00:00
Kristoffer Andersen fcbc6b8459 [IR] Improve IR Symbols API and null discipline in ReflectiveAccess lowering 2022-05-20 23:06:19 +02:00
Kristoffer Andersen 0142d96319 [EE-IR] Account for toplevel properties in reflective lowering 2022-05-20 23:06:19 +02:00
Igor Yakovlev b1c93fe53d [WASM] Implement std print 2022-05-20 16:33:58 +02:00
Igor Yakovlev 7f0535ded9 [WASM] Fix test adapter reporting 2022-05-20 16:33:58 +02:00
Igor Yakovlev 3d3526e3d0 [WASM] Workaround for compiled wasm runs under node 2022-05-20 16:33:58 +02:00
Igor Yakovlev 15ba9682e8 [GradlePlugin] Add mixed mode for js and wasm compilations 2022-05-20 16:33:57 +02:00
Igor Yakovlev 73a86fffe5 [WASM] Bootstrap std compatibility fix 2022-05-20 16:33:57 +02:00
Igor Yakovlev 526e99891a [WASM] Refcast and Reftest refactorings 2022-05-20 16:33:57 +02:00
Igor Yakovlev 1eaa266a95 [WASM] Minor refactorings 2022-05-20 16:33:57 +02:00
Igor Yakovlev 8da6ab7a04 [WASM] New VTable format 2022-05-20 16:33:57 +02:00
Artem Kobzar 8bc5508f5c fix(KT-52339): add newlines to SourceMap to calculate multiline comments in a right way. 2022-05-20 13:35:54 +00:00
Svyatoslav Kuzmich 84ed3ff5b0 [Wasm] Don't generate wat format by default in box tests
Gives ~15% tests speedup
Use kotlin.wasm.debugMode=1 to enable old behaviour
2022-05-20 13:34:28 +00:00
Dmitriy Novozhilov 706a0d287a [FIR2IR] Don't use source to determine that function is anonymous 2022-05-20 13:33:07 +00:00
Dmitriy Novozhilov 29725ad007 [Build] Disable -Werror for libraries if FIR is enabled 2022-05-20 13:33:06 +00:00
Dmitriy Novozhilov 6156808613 [FIR] Don't fail on not traversed KtContextReceiverList in RawFirBuilderTotalKotlinTest 2022-05-20 13:33:06 +00:00
Dmitriy Novozhilov c3a03de557 [FIR2IR] Search for ExtensionFunctionType constructor symbol using symbol provider 2022-05-20 13:33:05 +00:00
Dmitriy Novozhilov 119bc06435 [FIR2IR] Add Fir2IrComponents context receiver to standalone helper functions 2022-05-20 13:33:05 +00:00
Dmitriy Novozhilov f5b581db00 [Build] Enable context receivers feature in :compiler:fir:fir2rir 2022-05-20 13:33:05 +00:00
Dmitriy Novozhilov 9d4d55b3ce [LL API] Extract expect actual matching into separate phase 2022-05-20 13:33:04 +00:00
Dmitriy Novozhilov d66748d011 [FIR] Extract expect actual matching into separate phase 2022-05-20 13:33:04 +00:00
Dmitriy Novozhilov de842817e8 [FE] Move ExpectActualCompatibility to :core:compiler.common module 2022-05-20 13:33:03 +00:00
Troels Bjerre Lund c6f63a6aa6 [K/N] Fix LLDB line number bug
The lowering that inserts explicit returns into returnable blocks uses
the character offset of the returnable block for the newly created
return statement. This is wrong, but only noticeable when the callee is
an inlined function in another file, where the statements of the block
belong to callee rather than the caller.

The fix takes the offset of the last statement in the block. In the
case the block does not contain any statements, it falls back to using
the offset of the block itself.

The test does not impose any specific stepping order, since this would
be too fragile. It only tests that LLDB does not step to empty (or fully
//-commented) lines.


Co-authored-by: Troels Lund <troels@google.com>
2022-05-20 09:43:55 +00:00
Svyatoslav Kuzmich 68ef2f3242 [Wasm] Temporary disable wasm stdlib tests
Due to incompatible bootstrap compiler.
2022-05-20 12:22:43 +03:00
Igor Yakovlev 9519d7998b [WASM] Run all std tests with d8 2022-05-20 12:22:43 +03:00
Svyatoslav Kuzmich d1c81eb6ba [Wasm] Support Wasm GC milestone 5 2022-05-20 12:22:43 +03:00
Denis.Zharkov c018270462 Support DNN types in approximator
Mostly, it's relevant to FIR since there we started loading
type parameter based types as (T & Any..T?)
2022-05-19 16:54:06 +00:00
Denis.Zharkov 9f7876efb6 FIR: Avoid potentially dangerous checks at makesSenseToBeDefinitelyNotNull
Sometimes, it might be called before type parameter bounds are initialized
or even before the symbols are bound to FIR
In such cases, we just assume it makes sense to create DNN there
2022-05-19 16:54:06 +00:00
Denis.Zharkov c766f20554 FIR: Adjust override checker to definitely-not-nullable types
^KT-52201 Related
2022-05-19 16:54:05 +00:00
Denis.Zharkov 21b86123e8 FIR: Adjust analysis test data after changes in how we load Java types
Especially, it's about types based on type parameters
2022-05-19 16:54:05 +00:00
Denis.Zharkov 9676cd26cf FIR: Adjust Fir2IrText test data 2022-05-19 16:54:04 +00:00
Denis.Zharkov 40119cb041 FIR: Fix regression-like CONFLICTING_JVM_DECLARATIONS
See the class org.ini4j.Ini used in intelliJ (derived kt class MyIni)
It contains inherited remove override with the following signature:
String remove(Object sectionName, Object optionName)

While also, from kotlin.collections.MutableMap we inherit
boolean remove(Object, Object)

And we should treat them as different methods to have correct signatures
in resulting class scope
2022-05-19 16:54:04 +00:00
Denis.Zharkov 784a911d1a FIR: Minor. Clarify some names at FirTypeIntersectionScopeContext 2022-05-19 16:54:03 +00:00
Denis.Zharkov 20847d25cc FIR: Fix applying attributes at T.withNullability 2022-05-19 16:54:03 +00:00
Denis.Zharkov 3967699430 FIR: Fix applying SAM conversion in case of DNN types
See org.jetbrains.kotlin.test.runners.codegen.FirBlackBoxCodegenTestGenerated.Sam.testPassSubtypeOfFunctionSamConversion

^KT-52152 Related
2022-05-19 16:54:03 +00:00
Denis.Zharkov d7f87e0182 FIR: Adjust analysis test data to changes in loading Java types 2022-05-19 16:54:02 +00:00
Denis.Zharkov be3c9ceacb FIR: Adjust FirTypeEnhancement test data 2022-05-19 16:54:02 +00:00
Denis.Zharkov ce1229038d Minor. Touch files erroneously not being recompiled by IC
^KT-52137 Related
2022-05-19 16:54:01 +00:00
Denis.Zharkov fb5755a0fa FIR: Refine processing special functions with erased parameters 2022-05-19 16:54:01 +00:00
Denis.Zharkov bf96abeed1 FIR: Fix special members came from superclass
class JavaSuperClass {
  // members impls with special signature, but it doesn't override any Kotlin specials
}

class KotlinInterface {
   // special members
}

class JavaSubClass extends JavaSuperClass implements KotlinInterface {
   // we should obtain members from JavaSuperClass with their Kotlinish
   // signature, not the Java one
}
2022-05-19 16:54:00 +00:00
Denis.Zharkov a0c92db819 FIR: Support DNN types during unification of bare types
See org.jetbrains.kotlin.test.runners.FirDiagnosticTestGenerated.Resolve.Types.testBareWithFlexibleArg
2022-05-19 16:54:00 +00:00
Denis.Zharkov 8a742b2574 FIR: Refine operations over OriginalProjectionTypeAttribute
It's necessary because during substitution it might be necessary to combine
attributes from the original type (this) and substitution
where OriginalProjectionTypeAttribute is actually expected to be null.

Probably, it's worth considering some kind of assertion
that `other` is always null or their projections are the same.
2022-05-19 16:53:59 +00:00
Denis.Zharkov f70ae2df3a FIR: Refine inference constraints when type variable in flexible position
That issue might be fixed via changing
TypeVariableMarker.shouldBeFlexible at ConeConstraintSystemUtilContext
but this and some other tricks have been added because of incorrect
handling of constraints where type variable has a flexible bound

^KT-51168 Fixed
2022-05-19 16:53:59 +00:00
Denis.Zharkov 853b7ec078 FIR: Use NullableAny as a default bound 2022-05-19 16:53:58 +00:00
Roman Golyshev 934b8c890e [FIR] Add temporary debug output to better understand CME on TeamCity
This commit should be reverted as soon as the reason for those
exceptions is found and fixed.

Tracking issue is KTIJ-21791
2022-05-19 13:03:34 +00:00
sebastian.sellmair d7bfa02bb3 [tooling-core] Add KotlinToolingVersionOrNull factory function 2022-05-19 12:46:04 +00:00