Mikhail Glukhikh
285d5d06c7
More precise value reassignment analysis. #KT-7418 Fixed. #KT-6902 Fixed.
...
Variable can now be "exactly initialized", "may be initialized" and "not initialized".
A set of relevant tests. Some fixed tests.
2015-09-02 12:07:18 +03:00
Denis Zharkov
632e336782
Prohibit unsafe covariant conversion for collections invariant in Java
2015-09-02 10:39:29 +03:00
Denis Zharkov
6dc08f76a6
Preserve type capabilities while substituting
...
`val result` in test data rendered descriptors should be rendered as having raw type
2015-09-02 10:38:43 +03:00
Stanislav Erokhin
d015f713cb
KT-6244 Overloads with no default parameters should take over ones with defaults
...
#KT-6244 Fixed
2015-09-01 23:37:43 +03:00
Stanislav Erokhin
5ded315cbb
Improved error reporting for candidates with wrong parameter count
2015-09-01 23:37:42 +03:00
Mikhail Glukhikh
754f8af3fc
Type<*> is inferred now if Type<A> and Type<B> common supertype is Type<X> and X is not within parameter upper bound. #KT-7585 Fixed. #EA-68943 Fixed.
...
It provides also a fix for KT-7585 (empty type intersection assertion).
A set of relevant tests, one fixed test
2015-09-01 15:49:29 +03:00
Alexander Udalov
f7a178f978
Report warning on 'Singleton.javaClass'
...
As a temporary measure before 'javaClass' property is deprecated and removed.
Getting the Java class of a singleton this way is confusing and most of the
time is a failed attempt to get the Java class of a class with a companion
object (e.g. 'Int.javaClass')
2015-09-01 11:36:57 +03:00
Yan Zhulanow
2ce9903356
Fix tests
2015-08-31 15:33:13 +03:00
Yan Zhulanow
9838f9c942
Check deprecated annotations with use site targets
2015-08-31 15:33:04 +03:00
Yan Zhulanow
f86fe6a8d5
Allow multiple non-repeatable annotations with different targets
2015-08-31 15:33:02 +03:00
Yan Zhulanow
b38b7071b7
Targeted annotation diagnostic tests
2015-08-31 15:32:53 +03:00
Valentin Kipyatkov
e8dc9ede31
Implemented HiddenDeclaration annotation (doc-comment to be added!)
2015-08-29 10:54:59 +03:00
Alexander Udalov
9882e86ecb
Don't render contents of enum entry classes in .txt tests, regenerate tests
...
They are irrelevant because cannot be accessed from the outside anyway
2015-08-28 21:11:06 +03:00
Alexander Udalov
29abf94327
Prohibit clone() for enum classes
...
#KT-8972 Fixed
2015-08-28 21:11:02 +03:00
Denis Zharkov
e8f91e596c
Adjust test data after fixes about generic nullability
2015-08-28 18:50:26 +03:00
Denis Zharkov
5e09a0c2c9
Add some test cases after review
2015-08-28 18:50:25 +03:00
Denis Zharkov
b471767e03
Refine smart cast check for type parameters
2015-08-28 18:50:25 +03:00
Denis Zharkov
aad977d204
Properly check whether nullability of receiver argument fits to parameter's nullability
...
It's should behave like we check isSubtype(receiverType, parameterType) + use nullability info from smart cast
#KT-1090 Fixed
2015-08-28 18:50:25 +03:00
Denis Zharkov
6ecfa6e985
Refine subtyping check: pay attention to corresponding supertype nullability
...
F: Any, T : F? => !isSubtype(T, Any)
It helps to identify upper bounds violation like in KT-7455
#KT-7455 Fixed
#KT-2924 Fixed
#KT-3015 Fixed
2015-08-28 18:50:25 +03:00
Denis Zharkov
a906be6dd7
Prohibit using null as a value of generic type
...
#KT-7350 Fixed
#KT-7736 Fixed
#KT-7485 Fixed
2015-08-28 18:50:25 +03:00
Stanislav Erokhin
2a0159f23b
Created JetScope.memberScopeAsFileScope()
2015-08-27 12:01:11 +03:00
Stanislav Erokhin
9a435e332f
Fix InnerClassesScopeWrapper - remove properties and functions from this scope.
2015-08-27 12:01:07 +03:00
Alexander Udalov
56e12787a8
Fix exception on overridding var-property with a val constructor parameter
...
#KT-3810 Fixed
2015-08-27 10:23:49 +03:00
Alexander Udalov
8d9618348d
Move .java and .kotlin extension properties to kotlin.jvm
...
Delete the old ones in package kotlin.reflect.jvm because otherwise the code
using those functions will become red in a lot less meaningful way (overload
resolution ambiguity) than if they're deleted (unresolved import)
Based on the work originally done by @dnpetrov
#KT-8380 Fixed
2015-08-27 08:19:50 +03:00
Stanislav Erokhin
abb18b7bb9
KT-8861 Package name vs property with wrong receiver
...
#KT-8861 Fixed
2015-08-25 20:43:52 +03:00
Dmitry Jemerov
4743a69d76
rename platformName annotation to jvmName
2015-08-25 15:40:46 +02:00
Dmitry Jemerov
341f09afd3
rename platformStatic to jvmStatic
2015-08-21 16:59:05 +02:00
Stanislav Erokhin
2ee8f1c454
Change outer scope for nested class and object -- removed implicit outer class receiver.
...
#KT-5362 Fixed
#KT-8814 Fixed
2015-08-18 21:26:42 +03:00
Evgeny Gerashchenko
50dbf080f7
Test for KT-2082 Missing 'Unused expression' warning
...
#KT-2082 obsolete
2015-08-15 12:29:41 +02:00
Ilya Ryzhenkov
a717afd9db
Fix NPE in checkLValue when selector is absent. Add test for incomplete syntax.
2015-08-12 17:08:16 +03:00
Dmitry Petrov
b59bf6227f
unqualified super: should be able to invoke methods of Any without extra hassle
...
when Any is an implicit immediate superclass
2015-08-12 12:14:14 +03:00
Valentin Kipyatkov
e3bca3010c
Fixed infinite recursion
2015-08-11 13:21:57 +03:00
Valentin Kipyatkov
7f42c8b482
No report of wrong class literal for unresolved
2015-08-11 13:21:57 +03:00
Valentin Kipyatkov
ceae7eda39
Fixed test data
2015-08-11 13:21:56 +03:00
Mikhail Glukhikh
3f14e74b08
Drop old enum syntax. Comma / semicolon are now a syntactic part of enum entry.
...
Comma must present now between enum entries, semicolon between last entry & first member, constructor calls must be without colons / specifiers.
A swarm of tests fixed accordingly.
2015-08-11 10:38:10 +03:00
Denis Zharkov
cb7518c3ee
Minor. Drop irrelevant field from testData
2015-08-06 08:18:18 +03:00
Denis Zharkov
41d4af2cb9
Implement rendering of raw types
...
Also add some clarification in spec
2015-08-06 08:18:18 +03:00
Denis Zharkov
51668b4cc3
Do not substitute arguments while replacing them
...
It prevents from creating complicated types
2015-08-06 08:18:18 +03:00
Mikhail Glukhikh
5b31560808
x?.y is now nullable even if y is Unit + three tests + codegen test fix + source code fix #KT-7936 Fixed #KT-8347 Fixed
2015-08-05 12:26:01 +03:00
Mikhail Glukhikh
45cc3c025f
Mapping of JavaDoc deprecated to Kotlin Deprecated + a pair of tests
2015-08-05 12:25:39 +03:00
Valentin Kipyatkov
7d02b45558
Fixed test data
2015-08-04 18:05:57 +03:00
Valentin Kipyatkov
4c0404ea82
Changes on code review
2015-08-04 18:05:57 +03:00
Valentin Kipyatkov
c3064e2b0f
Synthetic extensions for non-public get/set java methods
2015-08-04 18:05:56 +03:00
Valentin Kipyatkov
d5f95cf126
Correct visibility for non-public SAM-adapters
2015-08-04 18:05:56 +03:00
Valentin Kipyatkov
cb9ef9e1f0
Fixed nullability for return and parameter types in SAM-adapters
2015-08-04 18:05:56 +03:00
Valentin Kipyatkov
729085ec9a
Iniital implementation of synthetic extensions for SAM-adapter functions (non-static only)
2015-08-04 18:05:55 +03:00
Mikhail Glukhikh
992c019c1e
Redundant modifier targets introduced (abstract / open on interface, final on enum or object)
2015-08-03 19:42:00 +03:00
Mikhail Glukhikh
d127162a6d
Removed LOCAL_ENUM_NOT_ALLOWED
2015-08-03 19:41:58 +03:00
Mikhail Glukhikh
4bd48c4796
Regular modifier checker implemented (initial version). A set of tests fixed accordingly.
...
Most of modifier diagnostic is expressed by REDUNDANT_MODIFIER, INCOMPATIBLE_MODIFIERS, REPEATED_MODIFIER, WRONG_MODIFIER_TARGET, WRONG_MODIFIER_PARENT.
A set of modifier diagnostics is not in use now (but not deleted yet).
2015-08-03 19:41:50 +03:00
Mikhail Glukhikh
faac06ff7e
Annotation option 'mustBeDocumented': definition, mapping from Kotlin to Java Documented and back, tests
2015-08-03 19:41:48 +03:00