Commit Graph

16146 Commits

Author SHA1 Message Date
Svetlana Isakova abfc8ed7e8 KT-5155 Auto-casts do not work with when
#KT-5155 Fixed
2014-06-21 12:26:33 +04:00
Svetlana Isakova 17c4930404 KT-2334 An error 'local function without body' is not reported
#KT-2334 Fixed
2014-06-21 12:26:33 +04:00
Svetlana Isakova 79cec6411d Mark only unreachable parts of element if it has reachable parts
like for 'return todo()' mark only 'return'
2014-06-21 12:26:33 +04:00
Svetlana Isakova 88ecc5cc59 Evaluate default value for argument non-deterministically
in pseudocode
2014-06-21 12:26:33 +04:00
Svetlana Isakova 9480907514 Mark some expressions after processing their components
when it's semantically correct

Expressions: calls, 'for' loops, elvis operators
It's significant for reporting 'unreachable code' correctly
2014-06-21 12:26:32 +04:00
Svetlana Isakova 6e622f2301 Highlight all text ranges for diagnostics in tests 2014-06-21 12:26:32 +04:00
Svetlana Isakova 67fd858432 Rename: getAllInstructions -> getInstructionsIncludingDeadCode
Added this method to 'Pseudocode' interface instead of 'getDeadInstructions',
added 'isDead' to 'Instruction' interface
2014-06-21 12:26:32 +04:00
Svetlana Isakova 4efeb2eae2 Refactoring: extracted 'reportUnreachableCode' 2014-06-21 12:26:32 +04:00
Pavel V. Talanov fc19f1db44 Minor: improve assertion message in SpecifyTypeExplicitlyFix 2014-06-20 22:23:24 +04:00
Andrey Breslav 868e0d9306 LOG.error() instead of exception for "Rewrite at slice" errors 2014-06-20 19:55:50 +04:00
Zalim Bashorov 79b7b1c447 JS stdlib: added test for using special names(i.e. Object.prototype members) in Maps and Sets. Fixed the support special names in PrimitiveHashMap. 2014-06-20 16:42:43 +04:00
Zalim Bashorov 6f5c88c21f JS stdlib: added LinkedHashMap abd LinkedHashSet. 2014-06-20 16:42:43 +04:00
Zalim Bashorov a2584dc6d7 JS backend: added entrySet to HashMap implementations and fixed iteration over maps. 2014-06-20 16:42:43 +04:00
Zalim Bashorov 516af6c908 JS backend: added expected receiver type for intrinsics. 2014-06-20 16:42:43 +04:00
Zalim Bashorov 247808e17b IDEA plugin: fixed crashing ifExpressionToElvis intention when applying to if expression which is part of another expression.
#EA-57307 fixed
2014-06-20 16:42:42 +04:00
Andrey Breslav 64175d3996 Tests for some more cases of JVM signature clashes 2014-06-20 15:51:47 +04:00
Andrey Breslav e2c5d9edf6 Support reporting errors on class objects and any classes or objects contained anywhere 2014-06-19 22:12:02 +04:00
Andrey Breslav 86e8a1d410 Do not report declaration clashes on MANY_IMPL_MEMBER_NOT_IMPLEMENTED 2014-06-19 22:12:01 +04:00
Andrey Breslav b076dc3b58 Test for signature clash in fields copied from class object 2014-06-19 22:12:01 +04:00
Andrey Breslav f0da5d570e Do not report "accidental overrides" when "override" modifier is specified 2014-06-19 22:12:01 +04:00
Andrey Breslav 9f29a8b263 Test for required class 2014-06-19 22:12:00 +04:00
Andrey Breslav 9ecbeeb100 Filter diagnostics in the CLI compiler, as well as in the IDE 2014-06-19 22:12:00 +04:00
Andrey Breslav 61c7c2f1a1 Minor. Extract function 2014-06-19 22:11:59 +04:00
Andrey Breslav 98701b7c6e Properly check overloads in enum 2014-06-19 22:11:59 +04:00
Andrey Breslav f1545963f3 Generate $propertyMetadata field in LIGHT_CLASSES mode 2014-06-19 22:11:58 +04:00
Andrey Breslav 654dd5afff Tests for more special names 2014-06-19 22:11:58 +04:00
Andrey Breslav 777f3d1341 Codegen tests now fail on JVM-specific errors 2014-06-19 22:11:57 +04:00
Andrey Breslav e27f3a9ab7 Duplicate signature generation fixed for collection classes
wWe used to generate a throwing stub clear();V twice, when something extended both Collection and Map
2014-06-19 22:11:57 +04:00
Andrey Breslav 2351c53dce Test that Javac does not fail on two methods that differ only by return type 2014-06-19 22:11:56 +04:00
Andrey Breslav b49a203a67 Generate bridges in light classes 2014-06-19 22:11:56 +04:00
Andrey Breslav 93b688d19b Minor. Method made private 2014-06-19 22:11:55 +04:00
Andrey Breslav ce27967ad0 Minor. Todo added 2014-06-19 22:11:55 +04:00
Andrey Breslav f59ff5d8fe Diagnostics for illegal platform names 2014-06-19 22:11:54 +04:00
Andrey Breslav 14a6cdf458 Compilation fixed 2014-06-19 22:11:54 +04:00
Andrey Breslav 5a27317baf Support generating light classes on type parameters having no name
Example:

class C<in /*no name here*/>
2014-06-19 22:11:53 +04:00
Andrey Breslav 111c0e55b8 Extra test for the case of error types in detecting duplicate signatures 2014-06-19 22:11:53 +04:00
Andrey Breslav a26f4f9203 Avoid failing on error types when enumerating all signatures 2014-06-19 22:11:52 +04:00
Andrey Breslav 8e4954ab67 Generate @NotNull annotations on delegated functions 2014-06-19 22:11:52 +04:00
Andrey Breslav afca70eb41 Test for nullability annotations generalized and generated 2014-06-19 22:10:57 +04:00
Andrey Breslav 6617a884e4 Minor. Test class renamed 2014-06-19 22:10:57 +04:00
Andrey Breslav 707da9278f Do not skip delegated members in LIGHT_CLASSES mode 2014-06-19 22:10:57 +04:00
Andrey Breslav 8fd166ea7b Minor. Method renamed 2014-06-19 22:10:57 +04:00
Andrey Breslav 05685bea5b BuilderFactoryForDuplicateSignatureDiagnostics code cleaned up 2014-06-19 22:10:56 +04:00
Andrey Breslav 42aa9e2378 Minor. Utility moved to a common place 2014-06-19 22:10:56 +04:00
Andrey Breslav 346c491ebd BuilderfactoryForDuplicateSignatureDiagnostics rewritten to Kotlin 2014-06-19 22:10:56 +04:00
Andrey Breslav 635f8ea626 BuilderfactoryForDuplicateSignatureDiagnostics moved out of GenerationState 2014-06-19 22:10:56 +04:00
Andrey Breslav f229301a0f More informative diagnostic messages for ACCIDENTAL_OVERRIDES and CONFLICTING_JVM_DECLARATIONS
#KT-1 In Progress
2014-06-19 22:10:55 +04:00
Andrey Breslav 622b7e3740 Do not report ACCIDENTAL_OVERRIDE on SAM adapters and such 2014-06-19 22:10:55 +04:00
Andrey Breslav 6bbc8ea951 Fix reporting errors on properties declared in constructors 2014-06-19 22:10:55 +04:00
Andrey Breslav 27f76630e6 ACCIDENTAL_OVERRIDE diagnostics supported
#KT-1 In Progress
2014-06-19 22:10:55 +04:00