Commit Graph

85705 Commits

Author SHA1 Message Date
Ivan Kochurkin b5ff49c903 [FIR] Consider JVM_TARGET in tests 2021-09-10 00:48:58 +03:00
Mikhail Glukhikh f397553e94 PSI2IR: don't generate annotations on init block (related to KT-48687) 2021-09-09 22:14:48 +03:00
Mikhail Glukhikh 457a6f4e9d IR: copy anonymous initializer annotations properly #KT-48687 Fixed 2021-09-09 22:14:48 +03:00
Nikolay Lunyak 108df38255 [FIR] Regenerate code 2021-09-09 20:23:08 +03:00
Nikolay Lunyak 05ffa240b3 [FIR] Change FirJvmStaticChecker base 2021-09-09 20:18:50 +03:00
Nikolay Lunyak 4f2eb8b955 [FIR] Make toAnnotationLookupTag() return null for generic annotations 2021-09-09 20:18:50 +03:00
Nikolay Lunyak 1a3f47badd [FIR] Make FirJvmStaticChecker more consistent with the legacy version 2021-09-09 20:18:49 +03:00
Nikolay Lunyak 2a2c92d8b3 [FIR] Add support for JVM_STATIC_ON_EXTERNAL_IN_INTERFACE diagnostic 2021-09-09 20:18:49 +03:00
Nikolay Lunyak 7006426304 [FIR] Add support for JVM_STATIC_ON_CONST_OR_JVM_FIELD diagnostic 2021-09-09 20:18:49 +03:00
Nikolay Lunyak f3d61c199b [FIR] Add support for JVM_STATIC_ON_NON_PUBLIC_MEMBER diagnostic 2021-09-09 20:18:49 +03:00
Nikolay Lunyak c2e5583780 [FIR] Add support for JVM_STATIC_NOT_IN_OBJECT_OR_COMPANION diagnostic 2021-09-09 20:18:49 +03:00
Nikolay Lunyak 276bfd9305 [FIR] Add support for OVERRIDE_CANNOT_BE_STATIC diagnostic 2021-09-09 20:00:38 +03:00
Nikolay Lunyak 5607be3920 [FIR] Add support for INAPPLICABLE_JVM_NAME diagnostic 2021-09-09 20:00:36 +03:00
Nikolay Lunyak 5ebad97cd5 [FIR] Add support for ILLEGAL_JVM_NAME diagnostic 2021-09-09 19:58:16 +03:00
Dmitriy Novozhilov 00c60bf569 [FE] Remove dependecy on :core:descriptors from :compiler:psi 2021-09-09 17:20:24 +03:00
Dmitriy Novozhilov 1d6b4d1d3c [FIR] Remove dependency on :compiler:frontend from checkers module 2021-09-09 17:20:23 +03:00
Dmitriy Novozhilov 15b77045ee [FIR] Remove all usages of classes and methods from FE 1.0 from FIR checkers 2021-09-09 17:20:21 +03:00
Dmitriy Novozhilov 0260bf8767 [FE] Move diagnostic parameter renderers to common module 2021-09-09 17:20:20 +03:00
Dmitriy Novozhilov c32aecb7ae [FIR] Don't use positioning strategies from FE 1.0 2021-09-09 17:20:19 +03:00
Dmitriy Novozhilov 00069b1d2f [FIR] Use diagnostic markers in FIR diagnostics 2021-09-09 17:20:18 +03:00
Dmitriy Novozhilov 850ca1916f [FE] Commonize positioning strategies and move them to :frontend-psi module 2021-09-09 17:20:17 +03:00
Dmitriy Novozhilov 7536dadb65 [FE] Introduce diagnostic markers
This is needed to move diagnostic renderers and positioning
  strategies to common modules for both frontends
2021-09-09 17:20:16 +03:00
Dmitriy Novozhilov 793209e72f [FE] Create special module for common frontent parts which uses PSI 2021-09-09 17:20:16 +03:00
Dmitriy Novozhilov ddc6c70611 [FE 1.0] Move diagnostic parameter renderers to common module 2021-09-09 17:20:15 +03:00
Dmitriy Novozhilov 405670e111 Merge :compiler:fir:jvm module into :compiler:fir:java 2021-09-09 17:20:14 +03:00
Dmitriy Novozhilov 8ffe3764ef Remove dependency on descriptors from :compiler:config.jvm 2021-09-09 17:20:13 +03:00
Jinseong Jeon 6342e6ecad FIR/LC: fix modality of enum class
enum class, which is extended by enum entries, should not be final.
(Those enum entries should be, instead.)

enum class itself wouldn't be instantiated, and thus it's technically
abstract, but having a private ctor() would be an option.
For the latter case, we can simply put no modality modifier.
2021-09-09 16:07:09 +02:00
Jinseong Jeon 204c5952bf LC: avoid adding @null nullability annotations 2021-09-09 16:07:09 +02:00
Jinseong Jeon 9e7ee2fdea Unify and use default value parameter name in default setter 2021-09-09 16:07:09 +02:00
Jinseong Jeon c2964f688e FIR LC: don't include annotations w/o use-site targets to property accessors 2021-09-09 16:07:09 +02:00
Jinseong Jeon 5446a8ad10 FIR IDE: null out for erroneous PsiType conversion 2021-09-09 16:07:09 +02:00
Jinseong Jeon 8e242655f9 FIR IDE: resolve call to property accessors 2021-09-09 16:07:09 +02:00
Jinseong Jeon cd4a08cb18 Migrate ReadWriteAccess and checker logic (from frontend-independent) 2021-09-09 16:07:09 +02:00
Svyatoslav Scherbina 01272cace3 [K/N] don't rely on expression type when lowering value constructor calls
Because of generics, these types don't exactly match the actual types in
generated code, and autoboxing can't fix this because this happens after
it.

^KT-48381 Fixed
2021-09-09 13:56:36 +00:00
Elena Lepilkina aaf666e0e1 [K/N] Turn on mimalloc by default for experimental MM 2021-09-09 13:41:37 +00:00
Alexander Udalov 64b911ea5e JVM IR: do not optimize casts for primitives in TypeOperatorLowering
#KT-48659 Fixed
2021-09-09 15:06:57 +02:00
Danil Pavlov 64827d03bc Update New memory model guide (#4567)
* update: stylistic review
2021-09-09 16:05:37 +03:00
Roman Golyshev 43156dc726 [FIR IDE] Handle FirImplicitInvokeCalls in KtFirImportOptimizer
Hacks with PSI to detect implicit invoke calls are no more needed
2021-09-09 14:57:15 +03:00
Roman Golyshev c7a6a77a04 [FIR] Correctly insert FirImplicitInvokeCall expression when needed
Before that, implicit invoke call were inserted only for
double-brackets expressions (like `foo()()`)

In fact, it is intended to be present in every place where `invoke`
function is used as an operator:

`foo()` - `invoke` operator usage, should be `ImplicitInvokeCall`
`foo.invoke()` - `invoke` function used, should be simple `FunctionCall`

Also, handle implicit invokes in `FirDelegatedPropertyChecker`
2021-09-09 14:57:14 +03:00
Roman Golyshev f4a59de1c2 [FIR] Refactor FirDelegatedPropertyChecker 2021-09-09 14:57:13 +03:00
Dmitry Gridin 9095774600 lightClassUtils: cleanup code 2021-09-09 11:17:36 +00:00
Dmitry Gridin 542d109166 JavaElementFinder: cleanup code 2021-09-09 11:17:36 +00:00
Dmitry Gridin 862e87b1ba JavaElementFinder: support repeatable annotation container
^KTIJ-19318
2021-09-09 11:17:35 +00:00
Vladimir Ivanov 8ba164163c [K/N] cinterop: ignore CXIdxEntity_CXXClass in ObjC header
Unexpected behavior is caused by `@class` declaration in ObjC context.
This entity is not used in CPP context either.
2021-09-09 09:37:05 +00:00
Mikhail Glukhikh ffbd574a08 Use -opt-in instead of -Xopt-in in comments and scripts 2021-09-08 23:43:55 +03:00
Igor Chevdar 8ad540953e [K/N][optmz] Fix for https://youtrack.jetbrains.com/issue/KT-48380 2021-09-09 00:32:41 +05:00
Nikolay Krasko 47a660e479 Fix publication for jvm-abi-gen
Effectively solved by rearranging order of lines - runtimeJar() should
be used after publish(). Otherwise, jar task is not registered as
dependency for publication, and publication misses the main jar.

 #KTI-637 Fixed
2021-09-08 22:28:53 +03:00
Elena Lepilkina 8924730320 [K/N][perf] Added option to analyze benchmarks without DB connection 2021-09-08 18:53:18 +00:00
Igor Laevsky 00f61978b8 WASM: Enable exception handling tests 2021-09-08 19:56:38 +03:00
Igor Laevsky ef2970a888 WASM: Cover frontend issue where unit-type is casted to the non-unit type 2021-09-08 19:56:36 +03:00