Mikhail Glukhikh
8d88109c00
Underscore names are now forbidden
2015-10-19 15:24:45 +03:00
Mikhail Glukhikh
059175560c
No __ as lambda parameter
2015-10-19 15:24:39 +03:00
Svetlana Isakova
cb34498278
Check nullability in initial constraints
...
except constraints for receiver type (it can be accessed via safe call)
2015-10-19 14:15:06 +03:00
Svetlana Isakova
bb9f7094e0
Report 'TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH'
...
on call element, not on callee expression
2015-10-19 14:15:05 +03:00
Yan Zhulanow
b2470a6aad
Report warning on unary plus()/minus()
2015-10-19 11:51:54 +03:00
Yan Zhulanow
e14c9645dc
Error on 'if' without an 'else' branch when used as an expression
2015-10-19 03:56:15 +03:00
Svetlana Isakova
7208efc784
Fix tests with type annotations
2015-10-17 19:07:25 +03:00
Denis Zharkov
cc94acdabc
Do not load common for special properties from Java
...
I.e. do not treat getName in Java enum as override of Enum.name
2015-10-17 17:46:17 +03:00
Denis Zharkov
28c46b73f1
Rename some of builtin parameters
2015-10-17 17:46:16 +03:00
Denis Zharkov
1c02231cda
Regenerate rendered descriptors after transforming Enum.values to property
2015-10-17 17:46:16 +03:00
Denis Zharkov
d8ede6d03e
Transform Enum.values to property
2015-10-17 17:46:16 +03:00
Stanislav Erokhin
7d7d37719b
Forbidden old invokeExtension convention.
2015-10-17 14:45:53 +03:00
Yan Zhulanow
3bb1b1adfd
Put property delegates -related warnings on 'by'
2015-10-16 22:20:06 +03:00
Yan Zhulanow
b42d913bd7
Unify 'lateinit' diagnostics
2015-10-16 22:19:33 +03:00
Yan Zhulanow
9ae3b0fa9c
Drop loading Java annotation methods as functions
2015-10-16 22:13:34 +03:00
Svetlana Isakova
082469aee4
Resolve annotations on type parameters of functions and properties
2015-10-16 21:58:45 +03:00
Svetlana Isakova
b401d46ae4
Check annotations on type arguments
2015-10-16 21:58:44 +03:00
Svetlana Isakova
6c4771147a
Added more tests on annotations for nullable types
2015-10-16 21:58:43 +03:00
Mikhail Glukhikh
4b35e3b135
Preliminary declaration visitor for estimating local variable's predictability for smart casts
...
Predictability estimation algorithm is completely new, but backward compatibility should present.
A large set of tests. Some updated tests.
Smart casts allowed for captured variables if they are not modified in closure #KT-9051 Fixed
Also #KT-8643 Fixed
Also #KT-7976 Fixed
Correct handling of lambda arguments in functions #KT-9143 Fixed
2015-10-16 20:47:47 +03:00
Stanislav Erokhin
d5dbc9638d
Added static methods, nested classes and companion object from superclasses.
2015-10-16 20:42:34 +03:00
Stanislav Erokhin
ace99f6c3f
Don't use ForceResolveUtil.forceResolveAllContents in TypeResolver in order to avoid problems with cyclic hierarchy.
2015-10-16 20:42:33 +03:00
Denis Zharkov
bd37a10677
Transform *Array.size to properties
2015-10-16 18:16:02 +03:00
Andrey Breslav
b050324869
Mark string prefixes and suffixes as unsupported
2015-10-16 18:03:53 +03:00
Zalim Bashorov
79d38a6c8f
Report the error when a declaration in Kotlin accidentally overrides a static member from Java
2015-10-16 16:14:34 +03:00
Zalim Bashorov
72a686f9e0
Add tests for accessing to Java/Kotlin inner/nested classes
2015-10-16 16:09:35 +03:00
Michael Nedzelsky
8e9f1ac31a
Extension function type is not allowed as supertype
2015-10-16 14:23:47 +03:00
Valentin Kipyatkov
d84020b1f3
Removed special support for parsing annotations for multi-declaration in for
2015-10-15 19:20:08 +03:00
Valentin Kipyatkov
98dc8f234e
Drop suppport for annotation syntax without '@' from parser
2015-10-15 19:20:07 +03:00
Alexander Udalov
bf4a681589
Deduce receiver type of callable reference from LHS, not from descriptor
2015-10-15 18:25:42 +03:00
Alexander Udalov
2cf437c0e2
Fix type of callable reference to fake override
2015-10-15 18:25:41 +03:00
Yan Zhulanow
d52f245cf7
Rename unary plus/minus in builtins and stdlib
2015-10-15 18:23:58 +03:00
Michael Nedzelsky
890ae3e914
Make single-file classes tolerant to having many main()'s
2015-10-15 15:46:26 +03:00
Michael Nedzelsky
57205f5721
drop BASE_WITH_NULLABLE_UPPER_BOUND
2015-10-14 20:51:01 +03:00
Alexander Udalov
ced1edcf98
Prohibit callable references to object members
...
To be able to make them more useful in the future, i.e. bound to the object
instance
2015-10-14 20:45:56 +03:00
Alexander Udalov
ec1b4776fe
Deprecate PropertyMetadata, use KProperty<*> for delegated properties instead
2015-10-14 20:45:25 +03:00
Alexander Udalov
3c74f48f91
Pass KProperty instances to property delegates
...
Inherit KProperty from PropertyMetadata, cache corresponding KProperty objects
instead of PropertyMetadataImpl objects, add support for properties with 2
receivers
2015-10-14 20:45:24 +03:00
Mikhail Glukhikh
f8a356747e
Stdlib rename: 'name' and 'ordinal' are now properties in Enum, same name functions are deprecated
2015-10-14 20:40:13 +03:00
Mikhail Glukhikh
78cfeb0d7d
Stdlib rename: List.indexOf(T), List.lastIndexOf(T), MutableCollection.removeAll(Collection<T>), MutableCollection.retainAll(Collection<T>)
2015-10-14 20:40:09 +03:00
Denis Zharkov
6322198a11
Revert 'isEmpty' transformation
2015-10-14 20:40:01 +03:00
Denis Zharkov
17c906658d
Transform Throwable members to properties
2015-10-14 20:39:59 +03:00
Denis Zharkov
e062e32f95
Do not load special builtin overrides from Java as synthesized
...
It has been done just to avoid clashes with real declarations that look
like our builtins: e.g. 'String removeAt(int index) {}' and 'String remove(int index) {}'in Java.
But synthesized members are even weaker than extensions.
Solution is just to ignore the latter declaration and treat first as effective override
of out builltin.
2015-10-14 20:39:51 +03:00
Denis Zharkov
d71b0144d5
Adjust testData to *Map transformation
2015-10-14 20:39:40 +03:00
Denis Zharkov
6fa8083a70
Transform builtin Map declaration and adjust stdlib
2015-10-14 20:39:38 +03:00
Denis Zharkov
f0e3fd617d
Adjust testData to CharSequence.length transformation
2015-10-14 20:39:35 +03:00
Denis Zharkov
1305d9755a
Transform CharSequence.length to property
2015-10-14 20:39:29 +03:00
Alexey Tsvetkov
5449cea6b7
Make Array type parameter T non-reified
2015-10-14 18:36:53 +03:00
Alexey Tsvetkov
62c25c0370
Replace is Array<T> with .isArrayOf<T>()
2015-10-14 18:36:53 +03:00
Mikhail Glukhikh
c0faf82f77
Initializer is now required for mutable properties with backing fields and open or custom setter #KT-9449 Fixed
...
Setters without body are not taken into account accordingly to KT-9449.
Old INITIALIZATION_USING_BACKING_FIELD_SETTER are both dropped.
2015-10-14 18:00:13 +03:00
Mikhail Glukhikh
9c9ab671b3
Effective visibility: local is now considered private, TYPE_DEPENDS_ON_LOCAL_CLASS diagnostics removed as repeated #KT-9542 Fixed #KT-9526 Fixed
2015-10-14 18:00:10 +03:00
Mikhail Glukhikh
3a902d6002
Effective visibility: fix for internal & protected vs protected comparison #KT-9582 Fixed
2015-10-14 18:00:07 +03:00