Commit Graph

16127 Commits

Author SHA1 Message Date
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
Andrey Breslav d2e464a02b Tests for local classes in weird positions 2014-06-19 22:10:54 +04:00
Andrey Breslav 9cb71c7fa8 Test data fixed 2014-06-19 22:10:54 +04:00
Andrey Breslav 55cfa161c7 Report conflicting signatures that are purely inherited from traits
When all signatures are inherited from traits, the origin elements lie outside of the class in question
2014-06-19 22:10:54 +04:00
Andrey Breslav 1343e59eb9 Properly handle accessors of top-level properties 2014-06-19 22:10:53 +04:00
Andrey Breslav 3bc404a80e Do not skip local classes in top-level functions
In this case we need names for such classes:

fun foo() = run {
  class A
  A()
}
2014-06-19 22:10:53 +04:00
Andrey Breslav bbaf47d3db Do not initialize properties in LIGHT_CLASSES mode 2014-06-19 22:10:53 +04:00
Andrey Breslav dd23b02dae Use safe names in codegen, for the case of light classes 2014-06-19 22:10:53 +04:00
Andrey Breslav d2ce6f5787 Safe identifier for the case of no name in PSI moved to 'descriptors' module, to be used in 'descriptor.loader.java' 2014-06-19 22:10:52 +04:00
Andrey Breslav bb581bb645 Only normalize names when accessing PSI, not earlier
#KT-4833 Fixed
2014-06-19 22:10:52 +04:00
Andrey Breslav ef7b43ecdc Disable JVM signature diagnostics for multi-module tests 2014-06-19 22:10:52 +04:00
Andrey Breslav 14829ff058 Check that resolved calls are completed in each module 2014-06-19 22:10:52 +04:00
Andrey Breslav f3c46341e5 Filtering out duplicate signature diagnostics if CONFLICTING_OVERLOADS or REDECLARATION is present 2014-06-19 22:10:51 +04:00
Andrey Breslav f80619e4e9 Ability to generate light classes for scripts 2014-06-19 22:10:51 +04:00
Andrey Breslav db2ad06e9c Ability to generate light classes when a type parameter appears in supertypes 2014-06-19 22:10:51 +04:00
Andrey Breslav 70f6041c70 Remove assert that does not hold for light classes on erroneous code
When clashing overloads are declared in the code, it's better to still be able to build light classes
2014-06-19 22:10:51 +04:00
Andrey Breslav 851fbbc937 Test data fixed 2014-06-19 22:10:50 +04:00
Andrey Breslav b4d154bb26 Test that clashing signatures are not reported when conflicting overloads are present in CLI 2014-06-19 22:10:50 +04:00
Andrey Breslav f79ddbd523 Minor. Passing Diagnostics instead of BindingContext 2014-06-19 22:10:50 +04:00
Andrey Breslav 74deb58734 Filtering duplicate diagnostics for trait implementations 2014-06-19 22:10:50 +04:00