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
Alexander Udalov
c2598faa4e
Fix class object visibility check
...
ExpressionTypingContext now has a scope for visibility checking, which isn't
replaced on replaceScope()
2013-12-02 19:56:15 +04:00
Alexander Udalov
92cdb0b6e7
Fix imports from objects
...
This almost reverts 345ecbf , since now properties are no longer created for
objects
2013-12-02 19:56:13 +04:00
Alexander Udalov
dce9fbb91c
Report a proper error on class object in enum entry or object
...
CLASS_OBJECT_NOT_ALLOWED instead of MANY_CLASS_OBJECTS
2013-12-02 19:56:13 +04:00
Alexander Udalov
2e4807856f
Don't create NamespaceType for enum entries
...
Enum entry expressions have the type of their enum, so it shouldn't be possible
to access static nested classes of enum entries from outside.
This fixes BlackBoxCodegenTestGenerated$CallableReference.testEnumNameMethod
2013-12-02 19:56:13 +04:00
Mikhael Bogdanov
606b3aa4a9
Test for local fun
2013-12-02 18:30:43 +04:00
Mikhael Bogdanov
59dbf75d80
Added test for sam
2013-12-02 18:30:43 +04:00
Mikhael Bogdanov
712dcaac91
Added tests for && and ||
2013-12-02 18:30:43 +04:00
Mikhael Bogdanov
0b2c3efc40
Inline recursion diagnostic
2013-12-02 18:30:43 +04:00
Mikhael Bogdanov
621a4002e4
Binary and unary expression support
2013-12-02 18:30:42 +04:00
Mikhael Bogdanov
1391676281
Support parenthesized, typed and labeled expressions
2013-12-02 18:30:42 +04:00
Mikhael Bogdanov
4079735bf2
Diagnostic for nullable parameter of Function type
2013-12-02 18:30:42 +04:00
Mikhael Bogdanov
d11311ec20
Test compilation fix
2013-12-02 18:30:42 +04:00
Mikhael Bogdanov
eb3edeb527
Nothing to inline diagnostic
2013-12-02 18:28:24 +04:00
Mikhael Bogdanov
f7c62fe631
Checking modality and visibility of inline function
2013-12-02 18:28:24 +04:00
Mikhael Bogdanov
87e66a6e57
Diagnostric for default
2013-12-02 18:28:24 +04:00
Mikhael Bogdanov
7329a7a9ef
Diagnostic for vararg parameters
2013-12-02 18:28:24 +04:00
Mikhael Bogdanov
558687f20f
Inline visibility checking
2013-12-02 18:28:24 +04:00
Mikhael Bogdanov
c89c465fec
Diagnostics for wrong inlinable usage
2013-12-02 18:28:24 +04:00
svtk
b178c79573
analyze function arguments after completion for unresolved and ambiguity cases
2013-11-27 14:26:36 +04:00
svtk
1bfca62592
Fixed: analyze unmapped (or with no callee) functional arguments with right context.
2013-11-22 18:58:02 +04:00
svtk
ae3331717e
Fixed: unmapped arguments should be completed as well.
2013-11-22 18:58:02 +04:00
svtk
058726a0f1
Check function arguments of nested unsuccessful calls.
2013-11-22 18:58:02 +04:00
svtk
1a34dffb1f
Fixed inference in a simple case.
...
Try number lower bounds before upper bounds when computing a value.
2013-11-22 18:58:01 +04:00
svtk
9d3a7804cc
Fixed tests for labels.
...
The bug was automatically fixed by previous commit.
2013-11-22 18:58:01 +04:00
svtk
ca1650d31d
Fixed exception from EA
...
"The constraint shouldn't contain different type variables on both sides: T <: R".
It occurred because we analyzed function literals before completion with unsubstituted (therefore wrong) expected type, and cached resulting type.
2013-11-22 18:58:01 +04:00
svtk
2bd4aa97c6
KT-4204 ConstraintSystem erased after resolution completion
...
#KT-4204 Fixed
2013-11-22 18:57:59 +04:00
svtk
c1ec8cbde9
check Nothing type for all expressions not only for calls and simple names
...
(but excluding statement expressions)
2013-11-22 18:57:58 +04:00
Andrey Breslav
345ecbf4c0
Never import object descriptors, for they may overwrite corresponding vals
2013-11-21 13:07:39 +04:00
Alexander Udalov
6f31692996
Import nested classes both from classes and their class objects
...
It seems that this incorrect behaviour was introduced in 726bcb5
2013-11-18 19:51:29 +04:00
Alexander Udalov
e2622b5dbb
Resolve extension calls on class objects
...
#KT-3470 Fixed
2013-11-18 19:51:29 +04:00
Alexander Udalov
838c408e68
LHS of qualified expressions are determined manually
...
ExpressionPosition is useless now and will be dropped
#KT-3866 Fixed
2013-11-18 19:51:28 +04:00
Alexander Udalov
e8089cc461
Synthetic class object of enum should always be public
...
#KT-2834 Fixed
2013-11-18 19:46:01 +04:00
Andrey Breslav
38b38e7b6d
KT-4198 On covariant projection, do not throw whole var's away
...
#KT-4198 Fixed
2013-11-18 18:30:41 +04:00
Andrey Breslav
c0fce6becd
KT-4209 Make constructors of primitives private
...
#KT-4209 Fixed
2013-11-18 15:09:56 +04:00
Alexander Udalov
776b5d0a6e
Minor, move enum diagnostic tests, add another test
2013-11-14 19:11:20 +04:00
Alexander Udalov
8c3f9149ac
Add a test on extension function to object
2013-11-14 19:11:20 +04:00
Alexander Udalov
29f3c4a1a0
Report upper bounds violation for objects, not only classes
2013-11-14 19:11:18 +04:00
Alexander Udalov
57aa355b05
Report INVISIBLE_MEMBER on private class object usage
2013-11-14 19:10:18 +04:00
Alexander Udalov
94deb21551
Minor, move diagnostic tests for class objects
2013-11-14 17:45:57 +04:00
svtk
64e12398af
comment added to tests
2013-11-08 16:33:41 +04:00
svtk
95ef417ee8
KT-4170 Compiler hangs (or works too long)
...
#KT-4170 Fixed
2013-11-08 16:33:41 +04:00
Andrey Breslav
70acf0fdba
Test for an obsolete issue
...
#KT-2956 Obsolete
2013-10-25 19:55:42 +04:00