Alexander Udalov
815ab15313
Remove JVM_OLD-specific test data from backend diagnostic tests
...
Old JVM backend is only used as a fallback in Evaluate Expression in the
IDE at this point, so it's supposed to compile only correct code anyway.
2023-07-17 16:55:24 +00:00
Alexander Udalov
b03e50129e
Tests: fix handling of diag.txt files in diagnostic tests with backend
...
Also take into account diagnostics reported via
GenerationState.collectedExtraJvmDiagnostics, and render them in the
similar format to KtDiagnostic.
Don't make the test pass if the reported list of diagnostics is empty,
because that defeats the purpose of the test.
2023-07-17 16:55:24 +00:00
Igor Yakovlev
78fa93d75c
[Wasm] Restrict WasmExport functions for primitive typed signature
2023-07-17 14:01:13 +00:00
Kirill Rakhman
883102c4c6
[FIR] Always run expect actual matching for actual annotation/inline class primary constructor
...
Previously, we didn't run it when the primary constructor itself didn't
have the actual modifier even though the modifier is optional.
#KT-60120 Fixed
2023-07-17 12:06:37 +00:00
Brian Norman
363b336b7a
[FIR] Only overridable members should report JvmName inapplicable
...
Instead of checking for only open declarations, check for overridable
declarations, since private declarations cannot be overridden even if
they are marked as open. While normally these modifiers are exclusive,
a declaration can be made open via a compiler plugin like AllOpen.
#KT-60183 Fixed
#KT-57223 Fixed
2023-07-17 12:06:09 +00:00
Pavel Kunyavskiy
6da3ecceab
[K/N] Implement frontend checkers for usages forward declaration type
...
Forward declaration type doesn't exist in runtime. This restricts
its possible usages.
^KT-59764
2023-07-17 09:24:33 +00:00
Mikhail Glukhikh
51e8a72f47
K2: expand return type properly in FirReturnTypeChecker
...
#KT-60229 Fixed
2023-07-14 16:38:47 +00:00
Mikhail Glukhikh
402e1de5fe
K2: reproduce KT-60229
2023-07-14 16:38:47 +00:00
Brian Norman
d2ad426350
[FIR] Fix node ordering for delegating constructor graph
...
Inject delegated constructor and other in-place initializer sub-graphs
after the delegated constructor call node. This ensures property
initialization and use is calculated correctly when there are complex
calculations for the arguments to the delegated constructor.
#KT-59708 Fixed
#KT-59832 Fixed
2023-07-14 13:42:29 +00:00
Egor Kulikov
70d49999ac
[FIR] Generate an error primary constructor when super call is invalid
...
Merge-request: KT-MR-11026
Merged-by: Egor Kulikov <Egor.Kulikov@jetbrains.com >
2023-07-13 17:37:48 +00:00
Roman Efremov
a79282cec1
[FE] Prohibit actual typealias to certain compiler annotations
...
^KT-58554
2023-07-13 16:12:59 +00:00
Ivan Kochurkin
f4a648aa3e
[K2, MPP] Fix NO_ACTUAL_FOR_EXPECT reporting for all modules including the platform ones
...
^KT-58483 Fixed
2023-07-13 16:01:26 +00:00
Stanislav Ruban
4f92008f01
[test docs] Actualize the README.md for diagnostic tests somewhat
2023-07-13 13:41:36 +00:00
Stanislav Ruban
5c644bcac8
[test infra] Add a directive for type checking utils that use @Exact
2023-07-13 13:41:36 +00:00
Dmitrii Gridin
b67b37cdb3
[FIR] FirJavaFacade: do not duplicate record constructor
...
The fresh version of intellij has all record-related declarations,
so an additional fake constructor leads to errors like
KTIJ-25364 (OVERLOAD_RESOLUTION_AMBIGUITY)
^KTIJ-25366 Fixed
^KTIJ-25364 Fixed
^KTIJ-25368 Fixed
^KTIJ-25370 Fixed
2023-07-13 09:21:38 +00:00
Mikhail Glukhikh
9d9d7880af
K2: render types in quotes in diagnostic messages
2023-07-13 09:07:39 +00:00
Mikhail Glukhikh
c839cd3c11
K2: don't use debugging type renderer in error messages
2023-07-13 09:07:39 +00:00
Roman Efremov
4a598afc36
[FE] Prohibit expect or actual opt-in annotations
...
^KT-58554
2023-07-13 08:15:42 +00:00
Timofey Solonin
c245fa45e3
Split K2 and K1 test data for multiplatform feature diagnostic
...
and add an explicit expect to the test data
^KT-31281
2023-07-12 10:50:33 +00:00
Anastasia.Nekrasova
fcba0ad75e
[Test] Add a test covering for resolution to subsumed members for raw types
...
^KT-57620
2023-07-12 09:11:01 +00:00
Timofey Solonin
e12e78d96b
Add an explicit diagnostic for when expect/actual modifiers are used in
...
an unsupported compilation
^KT-31281
2023-07-12 08:29:28 +00:00
Timofey Solonin
792b6482c0
Emit MultiPlatformProjects diagnostic on all declarations
...
where expect/actual modifier is present
^KT-31281
2023-07-10 17:26:23 +00:00
Nikolay Lunyak
d13e60aaec
[FIR] Prevent loosing errors for synthetic outer calls
...
The error occurs when completing the
call for the outer synthetic call
`ACCEPT_SPECIFIC_TYPE`. The error
is saved into the CS of this outer
candidate, which leads to its
callable reference to be an error
reference, but since such calls are
not parts of the FIR tree, we never
collect such errors.
^Fixed KT-59233
2023-07-10 10:26:43 +00:00
Nikolay Lunyak
79fce56c95
[FIR] Add a test for KT-59233
2023-07-10 10:26:43 +00:00
Nikolay Lunyak
d4c6e55e0a
[FIR] Require equivalent candidates to have the same parameters count
2023-07-10 09:43:22 +00:00
Nikolay Lunyak
fe783d7121
[FIR] Require equivalent candidates to have the same parameters order
...
NB: In general, it's unclear what to do in cases
like the following one, even when sometimes
we could, indeed, prefer something:
```
fun foo(a: Int, b: String, c: Boolean)
fun foo(b: String, c: Boolean, a: Int)
foo(c = false, b = "", a = 0)
```
^KT-55933 Fixed
2023-07-10 09:43:22 +00:00
Nikolay Lunyak
4f0563dee1
[FIR] Add a test for KT-55933
2023-07-10 09:43:22 +00:00
Nikolay Lunyak
8c5b2ae85b
[FIR] Fix modifying CheckerContext inside checkers
...
`InlineFunctionBodyContext` was not moved
outside the class to preserve as much
git blame info as possible.
^KT-56460 Fixed
2023-07-10 09:28:55 +00:00
Nikolay Lunyak
b46d4e5399
[FIR] Check classes for EXPECTED_PRIVATE_DECLARATION
2023-07-10 09:28:54 +00:00
Nikolay Lunyak
884cd6c754
[FIR] Move FirReturnsImpliesAnalyzer to the extended checkers
2023-07-10 09:28:54 +00:00
Igor Yakovlev
b5eafb9eb7
[Wasm] WasmExport implementation
2023-07-07 20:45:51 +00:00
Brian Norman
61acd2b6f5
[FIR] Do not allow context receivers on value classes
...
#KT-59413 Fixed
2023-07-07 11:41:59 +00:00
Mikhail Glukhikh
15b070b494
K2: don't resolve callable reference to enum entries #KT-59611 Fixed
2023-07-06 15:06:31 +00:00
Ilya Chernikov
b1b1eab35b
K2 Scripting: fix testdata for scripts diagnostics tests
2023-07-05 19:46:04 +00:00
Ilya Chernikov
bf3a6f7678
K2 Scripting: support script top-level destructuring declarations
2023-07-05 19:46:04 +00:00
Ilya Chernikov
00211a5fc9
K2 Scripting: turn on implicit body resolve for scripts
2023-07-05 19:46:04 +00:00
Ilya Chernikov
1a735b0842
K2 scripting: support script-level typealiases
2023-07-05 19:46:04 +00:00
Ilya Chernikov
70d2fcd9c4
K2 Scripting: deprecate top level script inner classes
...
no LT support yet
2023-07-05 19:46:03 +00:00
Ilya Chernikov
7484ccb9ee
K2 Scripting: allow script top level inline functions
2023-07-05 19:46:03 +00:00
Ilya Chernikov
86b3e65d19
K2 Scripting: enable script processing in diagnostics collector
...
and add scripts to containing decls in checker context te be able to
check for containing script in checkers
2023-07-05 19:46:03 +00:00
Ilya Chernikov
9adf24950a
Fir2Ir scripts: fix declarations registration and processing
2023-07-05 19:46:03 +00:00
Kirill Rakhman
04f16d75d2
[K2 MPP] Fix hasStableParameterNames check for fake overrides
...
This fixes a false positive error regarding different
parameter names in expect actual matching with fake overrides.
#KT-59737 Fixed
2023-07-05 13:30:01 +00:00
Dmitriy Novozhilov
38533977f0
[Test] Add test for KT-35314
2023-07-05 06:56:15 +00:00
Dmitriy Novozhilov
5d6328a706
[Test] Add test for KT-53460
2023-07-05 06:56:15 +00:00
Dmitriy Novozhilov
31d046e8cd
[Test] Add test for KT-40851
2023-07-05 06:56:15 +00:00
Dmitriy Novozhilov
eb041d5d6d
[Test] Add test for KT-42995
2023-07-05 06:56:14 +00:00
Dmitriy Novozhilov
a35b3bfd17
[Test] Add test for KT-41198 and KT-59860
2023-07-05 06:56:13 +00:00
Dmitriy Novozhilov
2ad441f6c8
[Test] Add test for KT-47494
2023-07-05 06:56:13 +00:00
Dmitriy Novozhilov
03973419dd
[Test] Add test for KT-47892
2023-07-05 06:56:12 +00:00
Dmitriy Novozhilov
637b46cb6e
[Test] Add test for KT-48115
2023-07-05 06:56:12 +00:00