Commit Graph

34582 Commits

Author SHA1 Message Date
Nikolay Krasko b903f87704 Drop kotin/kotlinx and kotlin/kotlinx.html bintray usages (KTI-528) 2021-03-26 21:08:45 +03:00
Alexander Udalov c17b6c59f8 JVM IR: add isInlineClassType, use it instead of isInlined 2021-03-26 18:57:01 +01:00
Mikhail Glukhikh 295858cf5c Rename FIR diagnostic to METHOD_OF_ANY_IMPLEMENTED_IN_INTERFACE 2021-03-26 17:06:00 +03:00
Mikhail Glukhikh 7d4b8587a3 Unite checks around supertypes in FirPrimaryConstructorSuperTypeChecker 2021-03-26 17:05:58 +03:00
Mikhail Glukhikh 221b6bd184 Drop usages of FirErrors.TYPE_PARAMETER_AS_SUPERTYPE 2021-03-26 17:05:57 +03:00
Jinseong Jeon bfc7eb7bab FIR checker: fix REFERENCE_BY_QUALIFIED positioning strategy to consider callable reference 2021-03-26 15:19:10 +03:00
Jinseong Jeon 8d8ed4cc18 FIR checker: check if callable reference targets are allowed members 2021-03-26 15:19:10 +03:00
Tianyu Geng 6769ce0e2b FIR checker: check TOPLEVEL_TYPEALIASES_ONLY 2021-03-26 15:19:10 +03:00
Ilya Kirillov 1123f97a15 FIR: ensure declaration is resolved to types in FirStandardOverrideChecker 2021-03-26 12:54:28 +01:00
Ilya Chernikov 2f49e8e0af Fix parameter index on IR script generation in REPL scenario
Before it, the wrong index lead to the validation error when repl
script definition had c-tor parameters (see test)
2021-03-26 11:41:24 +01:00
Mikhail Glukhikh 648bf99842 FIR: temporarily drop parent manipulation code around super type entries 2021-03-26 13:05:42 +03:00
Jinseong Jeon ff4d193891 FIR checker: utilize unsubstitutedScope creation 2021-03-26 13:05:41 +03:00
Jinseong Jeon 9934cfbb00 FIR2IR: minimize scope processing in fake override generation 2021-03-26 13:05:41 +03:00
Jinseong Jeon c830aed946 FIR2IR: minimize scope processing in data class synthetic member generation 2021-03-26 13:05:41 +03:00
Victor Petukhov 9c38db754e Add compiler flag to enable strict mode for improvements in the type enhancement
^KT-45674 Fixed
2021-03-26 11:04:01 +03:00
Victor Petukhov 731e3ebae1 Rename LV ImprovementsAroundTypeEnhancement into TypeEnhancementImprovementsInStrictMode 2021-03-26 11:03:49 +03:00
nataliya.valtman df08ed2ac0 Recompile files which import companion constant
#KT-44741 Fixed
2021-03-26 10:27:52 +03:00
Vladimir Dolzhenko 51393d2d0f Fix compilation 2021-03-25 16:23:01 +01:00
Ilmir Usmanov 5e6f52009f JVM IR: IC coroutines: return boxed type from suspend function if
the function overrides function, returning type argument
 #KT-45451 Fixed
2021-03-25 16:21:55 +01:00
Simon Ogorodnik 0aca68e7c7 FIR: Add init time measurement to full pipeline 2021-03-25 18:05:51 +03:00
Vladimir Dolzhenko 88058ca2c8 Fix non-default constructors for service and extension class violation 2021-03-25 12:57:07 +01:00
Ilya Chernikov 9ac6d30953 Fix arguments processing with scripting with old backend by default 2021-03-24 22:38:59 +01:00
Ilya Chernikov bcd7bc5fd7 Fix arguments processing with scriting with old backend by default 2021-03-24 21:26:57 +01:00
Ilya Chernikov a11f6d2e50 Add support for gradle option useFir and appropriate property...
`kotlin.useFir`
2021-03-24 21:24:20 +01:00
Ilya Chernikov 3400911d97 [minor] unmute fixed FIR tests 2021-03-24 21:24:20 +01:00
Ilya Chernikov 14121a1d9a FIR: Disable java tracking in FIR IC
until it is properly implemented,
fixes some IC tests for now, making it less pecise
2021-03-24 21:24:19 +01:00
Ilya Chernikov 20fdad87ec FIR: support direct use of typealias with friend-paths
also fixes one IC test
2021-03-24 21:24:19 +01:00
Ilya Chernikov 51a1cec08b FIR: Reimplement conflicts checker to detect conflicts in different files
also pass correct ScopeSession to checkers
fixes some IC tests
2021-03-24 21:24:19 +01:00
Ilya Chernikov 3e458a1efb FIR: Add IncrementalPackagePartsProvider usage in cli...
also refactor IncrementalPackagePartsProvider and parents to simplify
usage
2021-03-24 21:24:18 +01:00
Ilya Chernikov f8d50d585d FIR: Implement lookup tracking 2021-03-24 21:24:18 +01:00
Ilya Chernikov 7d29ae7cce FIR: add incremental compilation tests 2021-03-24 21:24:18 +01:00
Ilya Chernikov 6cc39788fd FIR: Fix main fn mangling (without proper detection)
proper main function detector has to be implemented in addition
to that
2021-03-24 21:24:18 +01:00
Ilya Chernikov 88e7ba2a3b FIR: Report syntax errors in cli compilation 2021-03-24 21:24:18 +01:00
Ilya Chernikov ed78183dbd FIR: use more specific cone error for unresolved user type ref
replaces diagnostic with <No name> with specific qualifier
2021-03-24 21:24:18 +01:00
Ivan Kylchik 77539fe2db Add visitExpressionBody method to IrCompileTimeChecker
This method is needed to explicitly indicate that IrExpressionBody can
be interpreted in any evaluation mode.
2021-03-24 21:24:17 +01:00
Ilya Chernikov e0297cf207 [minor] implement automatic stdlib-jdkX jars handling in KotlinPaths
fixes some local testing scenarios
2021-03-24 21:24:17 +01:00
Ilya Chernikov 76b2ca2e96 [minor] FIR: add missing error message 2021-03-24 21:24:17 +01:00
Mads Ager 41f5ac393a Update D8 used for dexing tests to version 2.1.96. 2021-03-24 20:16:15 +01:00
Ilya Kirillov 6e31ff4fb1 Introduce CallableId.asSingleFqName and use it instead CallableId.asFqNameForDebugInfo 2021-03-24 18:13:21 +01:00
Igor Chevdar 246a907753 [FE][PSI2IR] Generalized SamType
Operations regarding <fun interface> are common for all backends
2021-03-24 20:42:40 +05:00
Tianyu Geng 56bec6997c FIR checker: report SUPERTYPE_NOT_INITIALIZED
Combined this and the checker of
SUPERTYPE_INITIALIZED_WITHOUT_PRIMARY_CONSTRUCTOR together.

Also fixed SUPERTYPE_INITIALIZED_WITHOUT_PRIMARY_CONSTRUCTOR incorrectly
repoted as warning instead of error.
2021-03-24 17:48:39 +03:00
Tianyu Geng 6134c00698 FIR: track KtSuperTypeCallEntry in FirDelegatedConstructorCall
In PSI world, a call to super type constructor is represented by a
KtSuperTypeCallEntry. Currently FIR tracks the callee reference to this
constructor call.

This is undesirable because

1. We may want to report issues on the call arguments, so FIR must track
   the entire call rather than just the callee reference

2. Light tree actually reports the KtSuperTypeCallEntry.

3. Both the FirDelegatedConstructorCall and its `calleeReference` are
   currently referencing the same KtConstructorCalleeExpression PSI
   element as the source.

This change makes FirDelegatedConstructorCall track the entire
KtSuperTypeCallEntry as the source, if possible.
2021-03-24 17:48:39 +03:00
Tianyu Geng e1c80ac75c FIR checker: introduce NO_(GET|SET)_METHOD
Besides introducing new diagnostics, this commit unifies source usages
for array accesses in PSI & LT.
2021-03-24 16:25:01 +03:00
pyos 651fd4ad9f FIR: load Java annotation defaults after binding the class symbol
as they can refer to the class itself.
2021-03-24 16:09:25 +03:00
Mikhail Glukhikh 449a79151a FirNotImplementedOverrideChecker: check also anonymous objects / enums 2021-03-24 16:07:30 +03:00
Mikhail Glukhikh 82b8cc333e FIR: introduce INVISIBLE_ABSTRACT_MEMBER_FROM_SUPER 2021-03-24 16:07:28 +03:00
Mikhail Glukhikh 47d2a914bc FIR: add bad test data changes related to not implemented checker 2021-03-24 16:07:26 +03:00
Mikhail Glukhikh 9ce8420491 FIR: introduce not implemented checker 2021-03-24 16:07:25 +03:00
Mikhail Glukhikh 9ae41f5c07 FIR: store substitution for properties with implicit return type 2021-03-24 16:07:21 +03:00
Mikhail Glukhikh 4768700600 FIR error repro: property type mismatch in override from light classes 2021-03-24 16:07:20 +03:00