Commit Graph

92885 Commits

Author SHA1 Message Date
Mikhail Glukhikh 8fefa8a57b Restore Experimentality data class for IDE compatibility 2022-06-02 15:36:58 +00:00
Mikhail Glukhikh 075605a371 Restore ExperimentalMarkerDeclarationAnnotationChecker for IDE 2022-06-02 15:36:57 +00:00
Mikhail Glukhikh 8baff4404d Partial rename of 'Experimentality' around K1 checkers 2022-06-02 15:36:56 +00:00
Nikolay Lunyak 8d2868da32 [FIR JS] Regenerate tests
вфцвфдцьв
2022-06-02 13:47:34 +00:00
Nikolay Lunyak 62ec19bda2 [FIR JS] Fix current tests 2022-06-02 13:47:33 +00:00
Nikolay Lunyak c2cecb2818 [FIR JS] Add the dynamic type unsupported checker 2022-06-02 13:47:33 +00:00
Nikolay Lunyak 624728e5c7 [FIR JS] Support dynamic type in IR 2022-06-02 13:47:32 +00:00
Nikolay Lunyak 6b94ba5804 [FIR2IR] Add the missing argument 2022-06-02 13:47:32 +00:00
Nikolay Lunyak 858999c1a1 [FIR] Preserve information about prefix/postfix-ness
This information is needed for dynamics
2022-06-02 13:47:31 +00:00
Nikolay Lunyak 93fa5ee696 [FIR] Add the missing source kind 2022-06-02 13:47:31 +00:00
Nikolay Lunyak 0bc34a9e5a [FIR] Add some helper functions for dynamics 2022-06-02 13:47:31 +00:00
Nikolay Lunyak da8a8a8988 [FIR JS] Add a Fir2IrJsText runner 2022-06-02 13:47:30 +00:00
Nikolay Lunyak 4038c06b1e [FIR JS] Treat named arguments as positional for dynamics
Note: 174/1627 failing FirJsTest tests remaining
- 170 are multi-module tests
- 4 tests have to do with IR
2022-06-02 13:47:30 +00:00
Nikolay Lunyak 994e2970c7 [FIR JS] Suppress EQUALITY_NOT_APPLICABLE 2022-06-02 13:47:30 +00:00
Nikolay Lunyak ee58b52a3d [FIR] Fix false positive NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY 2022-06-02 13:47:29 +00:00
Nikolay Lunyak a474acd927 [FIR JS] Fix NOT_YET_SUPPORTED_IN_INLINE 2022-06-02 13:47:29 +00:00
Nikolay Lunyak ac1fb07102 [FIR JS] Add checkers.js 2022-06-02 13:47:28 +00:00
Nikolay Lunyak 1bf2f424a3 [FIR JS] Fix the plusAssign generation for dynamics 2022-06-02 13:47:28 +00:00
Nikolay Lunyak 9b87dcbeae [FIR JS] Move FirInvalidAndDangerousCharactersChecker to checkers.jvm
This is a JVM-specific checker.
2022-06-02 13:47:28 +00:00
Nikolay Lunyak 0e549e3329 [FIR JS] Suppress INVISIBLE_REFERENCE 2022-06-02 13:47:27 +00:00
Nikolay Lunyak 91fa7dec88 [FIR JS] Fix false positive NON_ABSTRACT_FUNCTION_WITH_NO_BODY 2022-06-02 13:47:27 +00:00
Mikhail Glukhikh eaa77b5af6 [FIR JS] Generate dynamic FIRs via DynamicScope 2022-06-02 13:47:26 +00:00
Nikolay Lunyak 5e97a36680 [FIR JS] Ignore tests with unsupported features 2022-06-02 13:47:26 +00:00
Nikolay Lunyak c8ef427421 [FIR JS] Fix ConeDynamicType in asPsiType 2022-06-02 13:47:26 +00:00
Nikolay Lunyak d7e8dc65f5 [FIR] Update smartcast tests 2022-06-02 13:47:25 +00:00
Nikolay Lunyak 611691ec70 [FIR JS] Support smart casts for dynamic 2022-06-02 13:47:25 +00:00
Nikolay Lunyak bdc3b5fe6f [FIR JS] Mute 170 failing multi-module tests 2022-06-02 13:47:24 +00:00
Nikolay Lunyak ccc72e5125 [FIR JS] Add a FirJsTest runner
Note: 763/1627 failed tests
- 170 are multi-module tests which can be ignored for now
2022-06-02 13:47:24 +00:00
Nikolay Lunyak 9a9beef25b [FIR JS] Prepare the infrastructure for FIR JS tests 2022-06-02 13:47:24 +00:00
Nikolay Lunyak d2a8942353 [FIR] Extract FirJvmConstDeserializer
Attempts to separate JVM and non-JVM entities more clearly.
2022-06-02 13:47:23 +00:00
Nikolay Lunyak be9e97d044 [FIR] Introduce ConeDynamicType 2022-06-02 13:47:23 +00:00
Nikolay Lunyak e763197c3e [FIR] Fix the use of local ClassIds 2022-06-02 13:47:22 +00:00
Ilmir Usmanov f922684169 Minor. Add regression test
#KT-52561 Fixed
2022-06-02 13:26:24 +00:00
Yahor Berdnikau 4a7a0126f2 Decrease Kotlin daemon autoshutdown timeout to 30 sec
Daemon spawned via buildSrc compilation is incompatible with other
compilations in Kotlin repo, as they use custom compiler classpath.

To reduce memory consumption (especially on CI), idle autoshutdown
timeout was reduced from default 2 hours to 30 seconds.
2022-06-02 13:16:54 +00:00
Alexander Likhachev e9a231e97e [Gradle, JS] Reuse yarn resolution results from configuration cache 2022-06-02 10:41:14 +00:00
Igor Yakovlev 6c5fdfe070 [WASM] Disable wasm std tests tc service output for local builds 2022-06-02 12:02:34 +02:00
Nikolay Lunyak 98c7399a35 [FIR] Remove the redundant backing field check
This commit fixes a failing visibility check
(FirSymbolByPsiTestGenerated.testBackingField) for the backing field.

Merge-request: KT-MR-6389
Merged-by: Nikolay Lunyak <Nikolay.Lunyak@jetbrains.com>
2022-06-02 08:36:14 +00:00
Denis.Zharkov 461d91a10e FIR: Rework checking dispatch receivers applicability
Using `ownerLookupTag` might be wrong in case of private constuctors
 of inner classes: their owner is an Inner class, but expected
 dispach receiver is Outer
2022-06-01 16:02:31 +00:00
Denis.Zharkov 67e6687e89 FIR: Fix FP error on a call to constructor of a private inner class
Do not check dispatch receiver applicability when checking visibility
for containing class of a callee constructor
2022-06-01 16:02:30 +00:00
Denis.Zharkov c1904004c4 FIR: Fix case when smartcast receiver is used for call to private method
^KT-54432 Fixed
2022-06-01 16:02:30 +00:00
Denis.Zharkov ccc32b4e3b FIR: Refine visibility check for private methods defined in a class
- use-site should be contained within the class that owns callee symbol
- class-representative of dispatch receiver value
should be exactly the same as a container class of a callee (not its subtype)
2022-06-01 16:02:29 +00:00
Mads Ager ddb140cc51 [K/N] Add splay benchmark based on the V8 Benchmark Suite.
The benchmark constructs a splay tree, measures the time it takes
to performs a number of insertions and removals, and after
measurements validates that the splay tree is valid.
2022-06-01 14:14:15 +00:00
Pavel Mikhailovskii 3b5179686e KT-52592 Fix NPE from KProperty.getExtensionDelegate on property delegated to another property; make $delegate methods private 2022-06-01 14:02:28 +00:00
Troels Bjerre Lund 315501debf [Native] Include base plugin
Using a standard plugin beats custom tasks.
2022-06-01 13:00:43 +00:00
Troels Bjerre Lund 5410655266 [Native] Add clean task to K/N:endorsedLibraries
Currently, :kotlin-native:endorsedLibraries does not have its build
directory deleted during a clean.

This task should probably be inherited from a plugin instead, but it is
not clear to me which one.
2022-06-01 13:00:43 +00:00
Dmitriy Novozhilov db3c2d2ba0 Advance bootstrap to 1.7.20-dev-1687 2022-06-01 12:12:01 +00:00
Roman Golyshev e72f8f829a [FIR] More special names unification 2022-06-01 11:56:39 +00:00
Sergej Jaskiewicz 58e2652ba6 [JS IR] Test in-line anonymous functions with extension functions 2022-06-01 09:02:32 +00:00
Sergej Jaskiewicz e03747ea7d [JS IR] Introduce the GENERATE_INLINE_ANONYMOUS_FUNCTIONS feature flag 2022-06-01 09:02:31 +00:00
Sergej Jaskiewicz c10af22b27 [JS IR] Lower lambdas into in-line anonymous functions when possible
Previously we always generated factories for contextful lambdas:

```kt
fun foo(a: Int) = { a }
```

```js
function foo(a_38) {
  return foo$lambda(a_38);
}

// factory!
function foo$lambda($a) {
  return function () {
    return $a;
  };
}
```

After this patch, the generated code for `foo` is more concise:

```js
function foo(a) {
  return function() { return a; };
}
```
2022-06-01 09:02:30 +00:00