Commit Graph

5554 Commits

Author SHA1 Message Date
Mikhail Glukhikh e85d97b894 FIR: introduce separate THROWABLE_TYPE_MISMATCH 2021-05-20 12:22:20 +03:00
Mikhail Glukhikh f0ce311fc6 Drop unused ConeTypeMismatchError 2021-05-20 12:22:19 +03:00
Dmitriy Novozhilov 99cdb86145 [FIR] Move createSessionWithDependencies to FirSessionFactory 2021-05-19 16:29:20 +03:00
pyos f1f13b6e97 JVM_IR: do not evaluate receiver of static calls if it is pure
#KT-46802 Fixed
2021-05-19 16:22:59 +03:00
Ilmir Usmanov 9fe503eeb3 Minor. Add regression test
#KT-45685 Fixed
2021-05-19 12:45:26 +02:00
Jinseong Jeon a3105da32e FIR checker: more specific type for CONFLICTIONG_PROJECTION 2021-05-19 01:04:21 +03:00
Jinseong Jeon 8d474c0e7e FIR checker: more specific type for containing class in diagnostics
about abstract members in non-abstract class
2021-05-19 01:04:20 +03:00
Jinseong Jeon 864ab2cadd FIR checker: clearer parameter names in diagnostics 2021-05-19 01:04:19 +03:00
Dmitriy Novozhilov e08df2c530 [Test] Add diagnostics and codegen tests with hmpp module structure 2021-05-19 00:52:31 +03:00
Dmitry Petrov 851980e36f JVM_IR KT-45103 optimize direct invoke for lambdas and callable refs 2021-05-18 22:20:12 +03:00
pyos bfb1a06f3d FIR: resolve conflicts between overloads with platform integer types 2021-05-18 22:11:33 +03:00
Dmitriy Novozhilov 38fe917141 [FIR] Change order of IC symbol provider and dependency symbol provider
This is semantically incorrect, but current behavior leads to problems
  in FIR bootstrap due to incorrect setup of IC provider. So this ordering
  change is a workaround for now
2021-05-18 20:56:07 +03:00
Dmitriy Novozhilov dbccd4d459 [FIR] Properly acquire module data in FirSignatureEnhancement 2021-05-18 20:56:04 +03:00
Steven Schäfer 60bc0f4baf IR: Lower shared variables in enum entries (KT-46605) 2021-05-18 16:55:38 +02:00
Victor Petukhov 2239404085 Extract type preparation during type checking to a separate component 2021-05-18 17:52:23 +03:00
Victor Petukhov 0d6764efc5 Process raw types during erasion properly
^KT-46670 Fixed
^KT-46476 Fixed
2021-05-18 17:38:52 +03:00
pyos 7eedcf75f9 Add tests for default inline suspend lambdas
Broken on JVM and JVM_IR
2021-05-18 10:48:31 +02:00
pyos 34ac232a82 Add a test for KT-46601 2021-05-18 10:48:31 +02:00
Ivan Kochurkin c3b8f3e859 [FIR] Add lValueTypeRef to FirVariableAssignment, fix tests with ASSIGNMENT_TYPE_MISMATCH 2021-05-17 22:33:18 +03:00
Ivan Kochurkin e57108d4e8 [FIR] Implement ASSIGNMENT_TYPE_MISMATCH, RESULT_TYPE_MISMATCH diagnostics, fix tests 2021-05-17 22:33:16 +03:00
Ilya Kirillov aa70c952eb FIR IDE: fix SOE on opening project
Kotlin library may contain cycles which causes SOE in FirModuleInfoBasedModuleData.dependencies
2021-05-17 20:56:57 +02:00
Dmitry Petrov 3a0e3798ec JVM_IR KT-46597 fix receiver type for inlined callable reference
Receiver type is used by SyntheticAccessorLowering to determine class in
which a synthetic accessor should be generated.
2021-05-17 20:12:58 +03:00
Igor Yakovlev c5372be267 [FIR IDE] Move and rename RawFirFragmentForLazyBodiesBuilder into Fir Ide module 2021-05-14 23:05:57 +03:00
Igor Yakovlev 633e03b710 [FIR IDE] LowLevel api refactoring 2021-05-14 23:05:54 +03:00
Igor Yakovlev 445f13d1bf [FIR IDE] Fix invalid body lazy resolve 2021-05-14 23:05:53 +03:00
Igor Yakovlev 37ccab4e23 [FIR] Fixed supertypes resolve for invalid code with class without ClassId 2021-05-14 23:05:48 +03:00
Igor Yakovlev 2e7eedd3f2 [FIR IDE] Correct in-body supertype resolve of fake nodes 2021-05-14 23:05:46 +03:00
Igor Yakovlev 959ff50fa7 [FIR IDE] Collect tower contexts for local declarations 2021-05-14 23:05:45 +03:00
Igor Yakovlev ae63ad0b6d [FIR] Fix annotations invalid references diagnostics 2021-05-14 23:05:44 +03:00
Igor Yakovlev 779a06e86f [FIR IDE] Add types, supertypes and status lazy designated transformers 2021-05-14 23:05:41 +03:00
Igor Yakovlev 95acb6121b [FIR IDE] Fixed property and parameter creation/replacement and fixed invalid source on annotation type 2021-05-14 23:05:40 +03:00
Igor Yakovlev 38242bee75 [FIR] Fixed invalid real psi source fir fir annotation name reference 2021-05-14 23:05:38 +03:00
Dmitry Petrov d1322280dd JVM_IR KT-46578 resolve fake overrides for fields 2021-05-14 16:20:22 +03:00
Mikhail Glukhikh a255f44d6e FIR2IR KT-46578 add overridden properties generation 2021-05-14 16:20:20 +03:00
Dmitry Petrov 53c1de172f IR KT-46578 add IrProperty#overriddenSymbols 2021-05-14 16:20:18 +03:00
Andrey Zinovyev dc9d5cdf35 [FIR] Handle of special getters when there is a kotlin super type
Special getter names (like Collection.size()) can be used only in Java
classes with all-java super-types
Because if there is a kotlin class (not interface) in
 the middle, we 'materialize' special getters to properties.
2021-05-14 15:38:09 +03:00
Dmitriy Novozhilov 43b075d452 [FIR] Add path normalization to LibraryPathFilter 2021-05-14 14:30:43 +03:00
Dmitriy Novozhilov cf5af0f7ea [FIR] Add KDoc to FirModuleData 2021-05-14 14:30:42 +03:00
Dmitriy Novozhilov 28be3a0dbc [FIR] Replace Path with String in KotlinJvmBinaryClass.containingLibrary
This is needed because :core:deserialization.common.jvm uses JDK 6
2021-05-14 14:30:37 +03:00
Dmitriy Novozhilov 2abed7161b [FIR] Get rid of FirJvmModuleInfo 2021-05-14 14:30:36 +03:00
Dmitriy Novozhilov 28e4721a89 [FIR] Check internal visibility in FirJvmModuleVisibilityChecker using module data 2021-05-14 14:30:35 +03:00
Dmitriy Novozhilov 02c58b7a8f [FIR] Refactor deserialized dependency providers and session factories with FirModuleData 2021-05-14 14:30:33 +03:00
Dmitriy Novozhilov 24f1f7b7b2 [FIR] Unify FirLibrarySession and FirJavaModuleBasedSession into single FirCliSession 2021-05-14 14:30:32 +03:00
Dmitriy Novozhilov f16194e60d [FIR] Get rid of FirSession.moduleInfo 2021-05-14 14:30:31 +03:00
Dmitriy Novozhilov 57a8642f5a [FIR] Add analyzer services to FirModuleData 2021-05-14 14:30:29 +03:00
Dmitriy Novozhilov 92d6b39ffe [FIR] Add late initialization of session in FirModuleData 2021-05-14 14:30:28 +03:00
Dmitriy Novozhilov 5cfa8694d4 [FIR] Fix all usages of declarationSiteSession 2021-05-14 14:30:27 +03:00
Dmitriy Novozhilov a15316de24 [FIR] Replace declarationSiteSession with moduleData 2021-05-14 14:30:26 +03:00
Dmitriy Novozhilov fa8d8ad503 [FIR] Add cache for top-level functions and properties to AbstractFirDeserializedSymbolsProvider 2021-05-14 14:30:25 +03:00
Dmitriy Novozhilov c523379e6a [FIR] Move out all JVM specific deserialization logic from AbstractFirDeserializedSymbolsProvider 2021-05-14 14:30:23 +03:00