Commit Graph

57498 Commits

Author SHA1 Message Date
Dmitriy Novozhilov 44571fbd8f [FIR] Minor. Extract methods used DataFlowInfo from DataFlowInferenceContext 2019-09-13 10:42:18 +03:00
Dmitriy Novozhilov 65edf73bee [FIR] Add node for enter to body of when branch 2019-09-13 10:42:18 +03:00
Dmitriy Novozhilov 531c2b9617 [FIR] Add supprot of InvocationKind.UNKNOWN for in-place lambdas 2019-09-13 10:42:18 +03:00
Dmitriy Novozhilov 2f6f07bc7d [FIR] Remove callbacks from stacks in DFA 2019-09-13 10:42:18 +03:00
Dmitriy Novozhilov beaab19eb9 [FIR] Replace ControlFlowGraphNodeBuilder with extensions on ControlFlowGraphBuilder 2019-09-13 10:42:18 +03:00
Dmitriy Novozhilov 15ff86fc50 [FIR] Refactor DataFlowVariables
Make inheritors of DataFlowVariable public, replace flags in DFV with types
2019-09-13 10:42:18 +03:00
Dmitriy Novozhilov f9d45d2f2a [FIR] Some minor fixes in DFA after review 2019-09-13 10:42:18 +03:00
Dmitriy Novozhilov 6b7aa21b8f [FIR] Minor. Remove useless creating data flow variables for value parameters 2019-09-13 10:42:18 +03:00
Dmitriy Novozhilov cb1322eaef [FIR] Add smartcasts on implicit receivers 2019-09-13 10:42:18 +03:00
Dmitriy Novozhilov f8459f8201 [FIR] Fix result type of const expressions with expected type 2019-09-13 10:42:17 +03:00
Dmitriy Novozhilov 546bbceeea [FIR] Reduce coping of flow and inline default value of it 2019-09-13 10:42:17 +03:00
Dmitriy Novozhilov c2180b9361 [FIR] Move reporting of errors in modularized tests in separate log file 2019-09-13 10:42:17 +03:00
Igor Yakovlev 5dc29b9059 Fix build 183 - add missing functions 2019-09-12 18:42:56 +03:00
Simon Ogorodnik 375920da58 [FIR] Add gradle property for extending jvmArgs of modularized test 2019-09-12 18:06:47 +03:00
Igor Yakovlev 841ed45440 Fix build 183 - missing imports added 2019-09-12 17:53:31 +03:00
Dmitry Petrov cb13dd3cdd Add psi2ir tests for 'break' and 'continue' inside 'when' 2019-09-12 15:11:01 +03:00
Dmitry Petrov f3837e91e3 Add BE tests for 'break' and 'continue' inside 'when' 2019-09-12 15:11:01 +03:00
Dmitry Petrov f06f6f4660 Allow 'break' and 'continue' inside 'when' in 1.4+ 2019-09-12 15:11:00 +03:00
Pavel Kirpichenkov 55cb9561c2 Provide better error messages for read-only delegate
Split error reporting into two parts for incorrect and missing candidates.
Missing function error is not reported on provideDelegate.
Update error factory and default message for error.
Update error texts in quick fix test data.

#KT-16526 Fixed
2019-09-12 14:58:21 +03:00
Dmitriy Novozhilov 68bcdaa6c3 Don't ask for member scope for ILT in IterableTypesDetection
EA-206183 fixed
2019-09-12 12:27:12 +03:00
Mikhail Zarechenskiy 7472c789c6 Add tests for obsolete issues
#KT-28001 Obsolete
 #KT-30236 Obsolete
2019-09-12 12:03:01 +03:00
Natalia Selezneva 89140be71d Minor: better error message 2019-09-12 09:56:42 +03:00
Natalia Selezneva 6d53636cc9 Minor: extract classes 2019-09-12 09:56:42 +03:00
Natalia Selezneva 8f2aaf62c2 Implement modification stamp for ScriptInitializer
This should influence ResolveElementCache to correctly update caches
because it rely on modifications stamps of the declaration
Before this change file.modificationStamp was used for script initializers in file, so they all became outdated after some change in file
2019-09-12 09:56:42 +03:00
Alexander Udalov d6cb857c97 JVM IR: don't use descriptors to map suspend function types 2019-09-11 23:33:11 +02:00
Alexander Udalov 34d2d7374c Do not use KotlinTypeMapper in enum values/valueOf intrinsic
Remove KotlinTypeMapper from inlineIntrinsics.kt completely
2019-09-11 23:33:11 +02:00
Alexander Udalov 8cdec31990 Do not use KotlinTypeMapper in coroutine inline intrinsics 2019-09-11 23:33:11 +02:00
Alexander Udalov d16bdded7f JVM IR: reuse JVM code for reified type parameter mappings instead of copy-paste 2019-09-11 23:33:11 +02:00
Alexander Udalov d1df453edc Do not use KotlinTypeMapper in generateTypeOf inline intrinsic
Make ReifiedTypeInliner and related classes generic over the
KotlinTypeMarker subtype (KotlinType or IrType), add a typeSystem to get
arguments/nullability and other properties of types regardless of their
representation, but still fall back to KotlinType when generating the
actual bytecode of other intrinsics (as/is)
2019-09-11 23:33:11 +02:00
Alexander Udalov ece09866f0 Simplify reified operations on type parameters in ExpressionCodegen
Move the "without propagation" logic to ReifiedTypeInliner since it's
only used from inline intrinsics.
2019-09-11 23:33:10 +02:00
Alexander Udalov 8efbcc5350 Do not use KotlinTypeMapper when generating JVM assert inline intrinsics 2019-09-11 23:33:10 +02:00
Andrey Uskov 15bfb7498c Minor. Fix target platforms formatting in FacetSettings
#KT-33813 Fixed
2019-09-11 22:57:11 +03:00
Nikolay Krasko a5b21308fd Minor refactoring for TypeHints properties (KT-22433) 2019-09-11 17:42:05 +03:00
Toshiaki Kameyama 36de8f1aa9 Type hints: don't show for incomplete expressions followed by Unit type expressions (KT-22433)
#KT-22433 Fixed
2019-09-11 17:42:04 +03:00
Toshiaki Kameyama 6e852837f7 Folding: fold "when" expression (KT-6314)
#KT-6314 Fixed
2019-09-11 17:42:04 +03:00
Igor Yakovlev cfcecaaeab LightClassApplicabilityCheckExtensions refactoring and IdeSerializationPluginApplicabilityExtension fix 2019-09-11 17:05:13 +03:00
Igor Yakovlev 2b7dee6f8d Add CodegenApplicabilityCheckerExtension and use it to fallback to Heavy LigthClasses
+ Fixed #KT-33584
2019-09-11 15:29:12 +03:00
Nikolay Krasko f3b7d2fca9 Fix exception of getting parent for the root package (EA-210820) 2019-09-11 12:51:55 +03:00
Nikolay Krasko d3f03cc607 Remove deprecated usage of BulkFileListener.Adapter 2019-09-11 12:40:26 +03:00
Nikolay Krasko 7f8774f68e Fix NPE in KotlinIndicesHelper (EA-209799) 2019-09-11 12:40:26 +03:00
Nikolay Krasko 90511c734d Fix NPE in JavaToKotlinAction (EA-210821) 2019-09-11 12:40:26 +03:00
Alexander Udalov 77399a175e Cleanup compiler warnings in compiler tests 2019-09-11 10:47:34 +02:00
Mads Ager 90a37617a4 [JVM_IR, IR] Remove more needless temporary variables.
Avoid using a separate origin for temporary variables introduced
for for loops. That doesn't add anything and gives one more case
for optimizations to deal with.

Extend the JVM specific optimizations to remove temporary
variables to deal with more cases encountered in for loops
lowering.
2019-09-11 10:07:45 +02:00
Roman Artemev e5a1040dbd [KLIB] Fix references to private top-level typealias via type abbreviation 2019-09-10 19:59:01 +03:00
Dmitriy Novozhilov 40ebe4063c [FIR] Refactor collecting statistics in modularized tests
Also add printing statistics of best pass at the end of build log
2019-09-10 18:34:03 +03:00
Dmitriy Novozhilov 6a75a9072c [FIR] Remove redundant resolution stage from resolution of synthetic function calls 2019-09-10 18:34:02 +03:00
Dmitriy Novozhilov ef5ac7df93 [FIR] Don't create member function for each when and try expression
Use one function (per session) instead
2019-09-10 18:34:02 +03:00
Yan Zhulanow 996d9a5d90 Pill: Enable Pill for FIR visualizer modules 2019-09-10 21:38:38 +09:00
Vladimir Dolzhenko d1285d9dbf Fix performanceTests for 192; Add perfCounters 2019-09-10 14:02:56 +02:00
Igor Yakovlev 8fa67f0478 Add correct modification tracking on UltraLight classes
Fixed #KT-32820
2019-09-10 14:38:10 +03:00