Commit Graph

53 Commits

Author SHA1 Message Date
Denis Zharkov 7d963e8e07 Differ this/non-this instances for vars initialization in class
When deal with constructed object (not this) treat it like it's fully initialized.

Otherwise (this or access with no receiver) access instruction
should be handled as it was before.

 #KT-6788 Fixed
 #KT-4126 Fixed
2015-03-11 17:45:25 +03:00
Denis Zharkov f673f4ff47 Prohibit super delegation call if there is primary constructor 2015-03-11 17:45:25 +03:00
Denis Zharkov 835a0df13a Prohibit secondary constructors in traits 2015-03-11 17:45:25 +03:00
Denis Zharkov 4a628a3d8f Prohibit supertype initialization without primary constructor 2015-03-11 17:45:25 +03:00
Denis Zharkov 28fbdb7c53 Prohibit constructors declarations for object 2015-03-11 17:45:24 +03:00
Denis Zharkov 525ddf9eb0 Prevent circular secondary constructors delegation 2015-03-11 17:45:24 +03:00
Denis Zharkov 7f20c4a237 Control flow changes for secondary constructors 2015-03-11 17:45:24 +03:00
Denis Zharkov 61ae694be4 Allow return statements in secondary constructors 2015-03-11 17:45:24 +03:00
Denis Zharkov 80e13d3f70 Allow class initializer without primary constructor 2015-03-11 17:45:23 +03:00
Denis Zharkov 3509cafcea Allow no super class initialization within header
if there is no primary constructor
2015-03-11 17:45:23 +03:00
Denis Zharkov 1555eec954 Secondary constructors delegation calls and body resolve 2015-03-11 17:45:23 +03:00
Denis Zharkov b2cecf1dd0 Secondary constructors resolve 2015-03-11 17:45:23 +03:00
Andrey Breslav d466533ef2 Missing test added 2015-03-06 21:59:03 +03:00
Pavel V. Talanov 012d25dbca Add test for soon to be deprecated 'class object' syntax 2015-03-06 19:37:00 +03:00
Pavel V. Talanov 913724f0e9 Allow default object to be denoted with 'default' modifier
Report 'default' modifier in illegal positions
2015-03-06 12:41:50 +03:00
Dmitry Jemerov e9266481c5 allow delegated properties to have getters and setters without bodies 2015-03-05 19:04:17 +03:00
Evgeny Gerashchenko af7eba64f7 Disallow PropertyMetadataImpl in conventions for delegated properties 2015-03-05 18:42:17 +03:00
Nikolay Krasko 30a50746b5 Intrinsic default objects implementation: tests 2015-03-05 01:30:38 +03:00
Pavel V. Talanov ffabe19229 Prohibit accessing nested classes/objects of class object using class literal
The fqname of class should be clear from code
Example: can't shorten A.Default.B.Default.C to A.B.C
Also fixes problem when nested class of enum class could be accessed via enum entry
2015-03-03 13:04:29 +03:00
Pavel V. Talanov 88c5379424 Change importing rules for objects:
Allow importing classes from object, prohibit import-on-demand from objects
It's unclear what import-on-demand from object should mean so we prohibit it for now
2015-03-03 13:04:27 +03:00
Andrey Breslav 4c84b19b33 KT-5488 Invalid ambiguity between plus and plusAssign
#KT-5488  Fixed
2015-02-27 19:32:58 +03:00
Stanislav Erokhin 602689892e Wrong diagnostic when last expression in lambda contains assignment operation
#KT-6769 Fixed
2015-02-27 14:16:20 +03:00
Andrey Breslav a00a118f94 EA-63343 - assert: DescriptorUtils.getClassDescriptorForTypeConstructor
#KT-6835 Fixed
2015-02-25 14:59:22 +03:00
Andrey Breslav d70d2ca146 Nullability of error types is not known
#KT-6829 Fixed
2015-02-25 14:59:21 +03:00
Stanislav Erokhin c6f8a1cfcc Add support local return from lambda with implicit unit type. 2015-02-24 14:14:49 +03:00
Stanislav Erokhin 57fd5cc84c Support local return in lambda without explicit return type 2015-02-24 14:14:49 +03:00
Nikolay Krasko 8ea9d39e98 Do not generate long lines and simplify merge in generated tests 2015-02-24 13:15:09 +03:00
Andrey Breslav ab93b530f1 Don't use annotations after nullability was forced upon a platform type
#KT-6762 Fixed
 #KT-6763 Fixed
2015-02-17 18:44:46 +03:00
Andrey Breslav 54483dbb95 KT-6118 Redundant type cast can be not redundant?
#KT-6118 Fixed
2015-02-16 18:50:10 +03:00
Andrey Breslav c61a29d4f5 KT-6774 Cannot find equals() when comparing with null
#KT-6774 Fixed
2015-02-16 18:50:09 +03:00
Pavel V. Talanov 2d59791cf2 Improve LazyClassDescriptor#getDefaultObjectDescriptor()
To cover the case when default object's name is not unique (redeclaration)
(Calling getClassifier is wrong for this case)
2015-02-16 15:38:44 +03:00
Nikolay Krasko 52f1c4048a More test for conflicting declarations with delegation 2015-02-13 20:28:50 +03:00
Andrey Breslav fcb6055913 SenselessComparisonChecker used for @NotNull values from Java 2015-02-10 06:55:49 +01:00
Andrey Breslav f36d6ce5b2 Reporting USELESS_ELVIS and UNNECESSARY_NOT_NULL_ASSERTION on Java's @NotNull values 2015-02-10 06:55:48 +01:00
Andrey Breslav 30f5c1b953 Reporting unnecessary safe calls on Java's @NotNull values 2015-02-10 06:55:48 +01:00
Andrey Breslav 1d4109aec1 Retaining annotations on Java array types 2015-02-10 06:55:48 +01:00
Andrey Breslav 5db6bb04e3 Basic Java nullability warnings implemented
#KT-6723 In Progress
2015-02-10 06:55:47 +01:00
Alexander Udalov cafc1ea24d Fix resolution of inherited Kotlin properties in Java classes
#KT-6720 Fixed
2015-02-04 14:57:47 +03:00
Andrey Breslav fecf6f9fdf Star projection information preserved in substitutions
#KT-6700 Fixed
2015-02-02 19:52:01 +03:00
Svetlana Isakova a2f03f2d52 Fix: constraint T? >: Int! should transform to T >: Int 2015-01-30 13:33:37 +03:00
Evgeny Gerashchenko 897854b3dc KT-6671 Report unused constructor parameters
#KT-6671 fixed
2015-01-27 22:38:27 +03:00
Valentin Kipyatkov 77a560775f KT-6628 Allow imports of classes from root package
#KT-6628 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov fa779bbdd2 Fixed KT-4085 Usability problem: Can't import protected nested class
#KT-4085 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov 974982463c Visible classes take priority when resolving imports with * 2015-01-21 20:10:18 +03:00
Valentin Kipyatkov b9d47ffe7a Changed priority for default imports + default imports include all built-ins explicitly for java module
#KT-4374 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov 929d6b885d Current package members to have less priority than explicit imports 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov a9d4fd5213 Moved tests for imports into proper group 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov 2c60201832 Fixed test data (+ renamed test) 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov 2e420fc312 Conflicting imports error for imports of classes and packages 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov b888ea601c Changed imports semantics: imports order does not affect resolve, explicit imports have higher priority for classes 2015-01-21 20:10:16 +03:00