Natalia Ukhorskaya
513a59d552
Check annotations on anonymous intializers
...
#KT-2208 Fixed
2013-12-23 13:45:57 +04:00
Natalia Ukhorskaya
359f2ddbda
Prohibit instantiation of annotation classes
...
#KT-3465 Fixed
2013-12-23 13:45:57 +04:00
Svetlana Isakova
c9f3f9ca1f
added position strategy to NOTHING_TO_INLINE error
2013-12-19 22:28:47 +04:00
Svetlana Isakova
cfb7bcb73b
use smart cast info while adding constraint for receiver
2013-12-19 22:05:52 +04:00
Svetlana Isakova
dd6940be41
added CHECK_TYPE directive to diagnostic tests
2013-12-19 13:01:05 +04:00
Natalia Ukhorskaya
145c7811a8
Named vararg arguments: don't allow to use array without spread, allow to use one value of vararg type
...
#KT-3802 Fixed
2013-12-18 15:13:52 +04:00
Evgeny Gerashchenko
212d303c7b
Modified test checking visibility of class objects.
2013-12-17 20:28:55 +04:00
Svetlana Isakova
26f66eaea5
fixed INACCESSIBLE_OUTER_CLASS_EXPRESSION check
...
for extension lambda (with implicit this) in nested class
2013-12-17 19:04:41 +04:00
Svetlana Isakova
400e6d3f44
KT-4310 Check for definite returns
...
#KT-4310 Fixed
2013-12-17 19:04:40 +04:00
Natalia Ukhorskaya
31ad4f8451
Annotation parameter must be constant
2013-12-17 15:41:24 +04:00
Natalia Ukhorskaya
7a9d822070
'As' function for constants
2013-12-17 15:00:30 +04:00
Svetlana Isakova
4c41d19eb1
interpret class in class object as static nested class
...
removed hack in TaskPrioritizer for import class from class object
2013-12-16 16:24:21 +04:00
Alexander Udalov
9e5c68a8f9
Fix KotlinBuiltIns.isUnit
...
It didn't check type's nullability
2013-12-12 21:38:20 +04:00
Svetlana Isakova
cc3f450132
added test for obsolete task
...
#KT-2336 Fixed
2013-12-11 19:53:52 +04:00
Svetlana Isakova
4d39dc38da
fixed: smart cast of boolean variable didn't work in boolean expression
2013-12-11 19:53:52 +04:00
Svetlana Isakova
cd6934bee8
fixed bug in 'DataFlowInfo.getPossibleTypes'
...
parent types should be enriched as well
2013-12-11 19:53:51 +04:00
Svetlana Isakova
4a26c9df04
don't report autocast on left expression in equality
...
if it was checked for not-null beforehand
2013-12-11 19:53:51 +04:00
Svetlana Isakova
4b89c22ba7
Check separately auto casts for nullable types.
...
It's necessary for functions with generics: constraint system ignores nullability divergence,
the error checks are made afterwards, the auto cast check should be made similarly.
2013-12-11 19:53:51 +04:00
Svetlana Isakova
41f2fcbb40
while resolve 'equals' as a fake call do not throw away temporary trace
2013-12-11 19:53:51 +04:00
Svetlana Isakova
ab1d27dd6b
don't use data flow info while checking for receiver
...
receiver with smart cast is checked separately
2013-12-11 19:53:50 +04:00
Svetlana Isakova
46b77f4472
don't report unnecessary smart cast on receiver
2013-12-11 19:53:50 +04:00
Svetlana Isakova
33c04bde9a
changed tests where autocasts aren't needed but are reported
...
due to KT-4294
2013-12-11 19:53:50 +04:00
Svetlana Isakova
c30259dfbe
added info about smart casts to diagnostic tests
2013-12-11 19:53:50 +04:00
Andrey Breslav
71be3bcec5
All tests for TCO moved to box (with diagnostics marked up)
2013-12-06 11:29:28 +04:00
Andrey Breslav
bb6ceffbbb
Missing tests added
2013-12-06 00:27:31 +04:00
Andrey Breslav
fe00b03279
Rename directory for diagnostic tests
2013-12-05 23:53:07 +04:00
Sergey Mashkov
1c81102941
Tail-call detection support in the front-end
2013-12-05 23:53:05 +04:00
Svetlana Isakova
8e27877817
check definite return in local functions
2013-12-05 15:51:57 +04:00
Svetlana Isakova
d27c8b7d61
added test for obsolete task
...
#KT-4034 Fixed
2013-12-05 15:51:57 +04:00
Natalia Ukhorskaya
27e602133d
Small fixes after review: do not set is_pure=true for named constants refactoring
2013-12-05 15:23:41 +04:00
Natalia Ukhorskaya
e5a3518248
Parse longs with 'L' suffix. Report error if 'l' used.
2013-12-05 15:23:40 +04:00
Natalia Ukhorskaya
b6ce6c5e5a
Parse floats with 'F' or 'f' suffix
2013-12-05 15:22:01 +04:00
Natalia Ukhorskaya
e805478d6c
Get call expression type from compile time value if possible
2013-12-05 15:22:00 +04:00
Natalia Ukhorskaya
53a5264aaf
Use type from compile time value for binary expression
2013-12-05 15:21:58 +04:00
Natalia Ukhorskaya
2a023c16a9
Use type from compile time value for prefix expression
2013-12-05 15:21:55 +04:00
Natalia Ukhorskaya
9c176ddaa8
Warning for integer overflow
2013-12-05 15:21:55 +04:00
Natalia Ukhorskaya
d63f6843c8
Merge ConstantExpressionEvaluator and CompileTimeConstantResolver
2013-12-05 15:21:50 +04:00
Andrey Breslav
9efa604cff
Revert 4ca90e9c68
2013-12-05 14:04:50 +04:00
Andrey Breslav
4ca90e9c68
Proper instructions for elvis operator
...
We should not mark elvis operator unused, for the rhs may have desired side-effects
2013-12-05 13:28:41 +04:00
Andrey Breslav
6df3a3042c
Properly handle the case of backing field access qualified with 'this' reference
2013-12-05 13:28:40 +04:00
Andrey Breslav
11fcd64949
Mark expressions for correct recognition by "unreachable code"
2013-12-05 13:02:17 +04:00
Andrey Breslav
b15b075484
Tests for bug in CFA: no return in when() is now detected
2013-12-05 13:02:15 +04:00
Andrey Breslav
ec39105183
Type parameter is not an expression: no need to report 'unused expression' on it
2013-12-05 13:02:14 +04:00
Andrey Breslav
1e2eb6dfa1
Special instructions added for calls and other constructs
2013-12-05 13:00:44 +04:00
Alexander Udalov
1c3383c811
Unextend Char from Number
...
This is impossible to achieve on JVM, where java/lang/Character does not extend
java/lang/Number
2013-12-04 15:57:53 +04:00
Alexander Udalov
7af72b98fe
Resolve generic bounds of all classes prior to supertypes
2013-12-04 15:57:53 +04:00
Alexander Udalov
4cd4026174
Support empty if-statements
...
Type-check "if (...) ;" to Unit, report "implicit cast to Unit", propagate data
flow info out of its condition
#KT-2478 Fixed
2013-12-04 15:19:47 +04:00
Alexander Udalov
dfd660a8e3
Try to resolve expression as class object if resolution found an inappropriate result
2013-12-03 19:00:44 +04:00
Alexander Udalov
310a70bf84
Report a separate diagnostic on inheritance from singletons
2013-12-02 19:56:16 +04:00
Alexander Udalov
080bd42f88
Allow singletons and functions with the same name
2013-12-02 19:56:15 +04:00