Victor Petukhov
d1acb09add
Report unsupported on using underscored type argument if the corresponding feature is disabled
2021-11-01 13:03:40 +03:00
Victor Petukhov
8a99aa4b42
[FIR] Don't build placeholder projection for types
2021-11-01 13:03:40 +03:00
Victor Petukhov
b29aeaa596
[FIR] Implement annotation checker for underscored type arguments
2021-11-01 13:03:37 +03:00
Victor Petukhov
697ef03d57
[FIR] Make FirPlaceholderProjection having source element
2021-11-01 13:03:31 +03:00
Victor Petukhov
5047751b85
[FIR] Support underscored type arguments in the light tree
2021-11-01 12:26:31 +03:00
Victor Petukhov
c9fbbe74ae
[FIR] Use common isPlaceholder check for type arguments in RawFirBuilder
2021-11-01 12:25:55 +03:00
Victor Petukhov
5508d40371
Put using underscored type arguments under a feature
2021-11-01 12:25:45 +03:00
Victor Petukhov
1073adbbf0
Report unsupported errors on annotations on underscored type arguments
2021-11-01 12:25:14 +03:00
Victor Petukhov
248c9550cd
Support type annotations resolution on an underscored type argument
2021-11-01 12:25:10 +03:00
Victor Petukhov
b69fb6779f
Basic support of partially specified type arguments though a new underscore operator for type arguments
...
^KT-13394
2021-11-01 12:25:07 +03:00
Margarita Bobova
e057831f7f
Add changelog for 1.5.31
2021-11-01 10:25:18 +03:00
Dmitriy Novozhilov
275a8a7a36
[FE 1.0] Fix message for UNINITIALIZED_ENUM_COMPANION_WARNING\
...
^KT-49110
2021-10-30 13:43:12 +03:00
Dmitriy Novozhilov
2956b8b307
[FE 1.0] Fix commit message of UNNECESSARY_SAFE_CALL warning
...
^KT-46860
2021-10-30 13:41:24 +03:00
Dmitriy Novozhilov
b9189f3099
Advance bootstrap to 1.6.20-dev-4603
2021-10-30 13:35:20 +03:00
Artem Kobzar
979e9f94ef
feat(Escaped Identifiers): add ability to use any symbol wrapped in back ticks.
2021-10-29 17:55:59 +00:00
zhelenskiy
ea10b4a781
Synchronizing by values and primitives is forbidden
...
Signed-off-by: zhelenskiy <zhelenskiy2000@yandex.ru >
2021-10-29 18:50:30 +02:00
Dmitriy Novozhilov
877b53201b
[FIR] Prohibit access to members of companion of enum from enum entry initializer
...
^KT-49110
2021-10-29 18:45:23 +03:00
Dmitriy Novozhilov
58889a2b5c
[FE 1.0] Prohibit access to members of companion of enum from enum entry initializer
...
^KT-49461 Fixed
^KT-49110
2021-10-29 18:45:19 +03:00
Dmitry Petrov
4f0c3c3c0d
JVM_IR never generate setter synthetic accessor for 'val' field
...
KT-49316
2021-10-29 18:38:11 +03:00
Yahor Berdnikau
d7ae7ca911
Ensure all test tasks is finalized by 'cleanTestKitCacheTask' on CI.
...
^KT-45745 In Progress
2021-10-29 17:34:00 +02:00
Yahor Berdnikau
c25d243111
Add 'kgpOtherTests' task.
...
This will run tests for all support plugins, such kapt, allopen, etc...
^KT-45745 In Progress
2021-10-29 17:34:00 +02:00
Artem Kobzar
102072a229
fix(KT-40236): compute JsName from overridden symbols.
2021-10-29 14:09:31 +00:00
Roman Golyshev
29bb8cea8f
[FIR] Add missing ensureResolved to FirClassSubstitutionScope
...
`createNewTypeParametersAndSubstitutor` call might need resolved types
to be able to work correctly with the generics' type bounds
2021-10-29 15:59:35 +03:00
Georgy Bronnikov
534beb8553
IR: Test for toSkip(this) in T.resolveFakeOverride()
...
^KT-49371 Fixed
2021-10-29 12:13:57 +03:00
David Saff
c67a1ee2e5
Add a dry-run arg to show what _would_ be run, without actually running ( #4630 )
2021-10-29 11:38:56 +07:00
Sergey Bogolepov
d072a3ca59
[K/N] Fix fileCheckTest temporary files dir
2021-10-29 04:07:31 +00:00
Sergey Bogolepov
95bd5fcc4b
[K/N] Update filecheck tests for different ABIs
2021-10-29 04:07:31 +00:00
Sergey Bogolepov
49fdeb73ee
[K/N] Make default LLVM attributes target-specific
...
Unfortunately, the world of native development is diverse,
and we can't generate one bitcode that is correct on every platform.
What is important to us is that AAPCS64 and Windows x64 extend
<32 bit arguments on callee side, so we can't use zext/sext args for them.
2021-10-29 04:07:30 +00:00
Sergey Bogolepov
fdd020eab6
[K/N] Tests for function attributes in bitcode generator
...
Besides, well, tests themselves, this commit extends FileCheck infra to
make it possible to test bitcode for direct and reverse interop.
2021-10-29 04:07:30 +00:00
Sergey Bogolepov
851f4d86d9
[K/N] Include cstubs into -Xsave-llvm-ir
...
This way we are able to FileCheck interop bridges.
2021-10-29 04:07:29 +00:00
Sergey Bogolepov
71fb8f90d4
[K/N] Drop UnsignedValuePassing
...
We don't need it anymore since codegen now handles unsigned types.
2021-10-29 04:07:29 +00:00
Sergey Bogolepov
e37d669dc3
[K/N] Opt-in for meaningful names for in "objc2kotlin" bridges
...
It is hard to run FileCheck tests over generated ObjC bridges because
they share the same name ("objc2kotlin"). To overcome this hurdle,
this commit introduces a compiler flag that appends function name to
"objc2_kotlin". This change might be useful for end-users, for example,
it makes stacktraces more readable. But it will require additional
testing and polishing which is out of the scope of this change.
2021-10-29 04:07:28 +00:00
Sergey Bogolepov
cf3296c94c
[K/N] LLVM attributes at call-sites
...
(I messed up commit history and all changes had to be squashed. Sorry.)
The commit is originated from KT-48591. The root of the problem is
following: we unconditionally added sext to all value parameters of
imported functions. To fix this problem we have to pass zext/sext
depending on the parameter type.
To make things right and future-proof, we decided to refactor
a significant part of IR to bitcode translator: when generating callsite
compiler "looks" at callee and applies its attributes to the callsite.
There are several sources of attributes:
1. External LLVM functions from runtime: just copy-paste attributes.
2. Direct IR calls: infer attributes from the declaration.
3. Virtual calls: use available declaration, so almost the same as prev.
4. External declarations functions: manual labor!
Specifying attributes at all callsites (including Kotlin->Kotlin) makes
things uniform and a little easier to implement.
All in all, the delta is significant, but comprehensible. In some places
I managed to make it seamless by changing declaration type and its
usages types simultaneously. In others (ObjCExport), unfortunately,
things got a little messy.
#KT-48722 fixed
2021-10-29 04:07:28 +00:00
Svyatoslav Kuzmich
a13329fc65
[JS IR] Regenerate and mute test
2021-10-28 22:39:09 +03:00
Artem Kobzar
790e8843f9
fix(JS_IR): add outer classes resolving inside the function inliner.
2021-10-28 17:34:58 +00:00
Artem Kobzar
7f7aa9a921
feat(Inner Classes): generate typescript type definitions and JS for Inner Classes.
2021-10-28 17:33:41 +00:00
Ivan Kochurkin
744191099c
[FIR] Fix false positive "return required" for if/else with inlined return in branch
...
^KT-49289 Fixed
2021-10-28 20:02:25 +03:00
Svyatoslav Kuzmich
5b10396f48
[stdlib] Test that modification of the array returned by toCharArray() doesn't affect the original string
2021-10-28 15:49:00 +00:00
Svyatoslav Kuzmich
f7d3cb269f
[Wasm] Support passing lambdas from Kotlin to JS
2021-10-28 18:47:38 +03:00
Svyatoslav Kuzmich
766377a041
[Wasm] Remove WasmForeign annotation
...
No longer needed since external interfaces are supported
2021-10-28 18:47:38 +03:00
Roman Artemev
23ad0e7c63
[TEST] Add test checking cast to DNN type
...
muted temporary due to required support in backends
2021-10-28 18:03:14 +03:00
Roman Artemev
5b19c41373
unmute jvm test
2021-10-28 18:03:13 +03:00
Roman Artemev
4424512bd6
[TEST] Add irText test for DefinitelyNotNull type
2021-10-28 18:03:12 +03:00
Roman Artemev
d809e260cb
[KLIB] Support DefinitelyNotNull type in KLIB
...
- add proto message
- serialize/deserialize
2021-10-28 18:03:11 +03:00
Roman Artemev
29728efbf7
[PSI2IR] Support DefinitelyNotNull type translation in Psi2Ir
2021-10-28 18:03:11 +03:00
Roman Artemev
101afded69
[IR] Introduce IrDefinitelyNotNullType in IR
...
- support it in render
- support in IR copy
- KEEP-268
2021-10-28 18:03:09 +03:00
Tianyu Geng
b48870c11f
FIR checker: pass expected array type in ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION
...
This is needed by the IDE quickfix to generate the correct `arrayOf` (or
`intArrayOf`, etc`) wrapper call.
2021-10-28 16:36:02 +03:00
Mikhail Glukhikh
9f062df258
FE: fix factory and message for EXPOSED_FROM_PRIVATE_IN_FILE
...
#KT-49442 Fixed
2021-10-28 16:24:43 +03:00
Ivan Kylchik
1a52512578
[JS TESTS] Restore AbstractIrCodegenWasmJsInteropJsTest in generator
2021-10-28 15:18:30 +03:00
Dmitriy Novozhilov
0cce0fbbfb
[FIR] Remove unused methods from FirProvider
...
Those methods were created for first prototype of FIR plugin API, and
now they are completely redundant
2021-10-28 15:01:22 +03:00