Natalia Ukhorskaya
96dc8b42bb
Support for unary expressions
2013-12-05 15:20:08 +04:00
Natalia Ukhorskaya
b7b957ffd2
Deparentesize expression in ConstantExpressionEvaluator
2013-12-05 15:19:58 +04:00
Natalia Ukhorskaya
210899af22
Support && and || in ConstantExpressionEvaluator
2013-12-05 15:19:55 +04:00
Natalia Ukhorskaya
f8f55799b9
Support or, and, xor and etc in ConstantExpressionEvaluator
2013-12-05 15:19:49 +04:00
Natalia Ukhorskaya
41387c3544
Support plus, minus, div, mod, multiply in ConstantExpressionEvaluator
2013-12-05 15:19:46 +04:00
Natalia Ukhorskaya
50d29e0526
Support string templates in ConstantExpressionEvaluator
2013-12-05 15:19:37 +04:00
Natalia Ukhorskaya
0b1dd2d2be
Support toInt, toChar and etc as CompileTimeConstants
2013-12-05 15:19:26 +04:00
Natalia Ukhorskaya
f218bd1df2
Add NotNull annotations
2013-12-05 15:19:23 +04:00
Natalia Ukhorskaya
9dcee96734
Move test methods to separate class
2013-12-05 15:19:22 +04:00
Natalia Ukhorskaya
c437b8c4dc
Rename files
2013-12-05 15:19:22 +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
3629a539e4
Smoke test data fixed
2013-12-05 13:28:40 +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
5b3bc7f839
Print instructions for functions in classes
2013-12-05 13:28:40 +04:00
Andrey Breslav
853ebe3436
Do not print trailing whitespace in test data
2013-12-05 13:28:39 +04:00
Andrey Breslav
e09d3aab3a
Test for CFA in string templates
2013-12-05 13:28:39 +04:00
Andrey Breslav
11fcd64949
Mark expressions for correct recognition by "unreachable code"
2013-12-05 13:02:17 +04:00
Andrey Breslav
6a4043c9a0
Do not display trivial sets of next/previous instructions in test data
...
For better readability of test failures
2013-12-05 13:02:17 +04:00
Andrey Breslav
e8c94a9d1d
Do not generate call for elvis + move dead code tests
2013-12-05 13:02:17 +04:00
Andrey Breslav
e0cf73d989
Do not forget to process rhs on unsupported lhs
2013-12-05 13:02:16 +04:00
Andrey Breslav
28acbcb219
Using call for set on an indexed expression in lvalue position
2013-12-05 13:02:15 +04:00
Andrey Breslav
a5854560f0
Proper order of arguments in array setter calls
2013-12-05 13:02:15 +04:00
Andrey Breslav
163e5cfbb4
Properly process this in callee position
2013-12-05 13:02:15 +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
b5ae3adf77
Proper resolved calls for '=='
2013-12-05 13:02:14 +04:00
Andrey Breslav
87b6ec4990
Proper read instructions for function literals
2013-12-05 13:02:14 +04:00
Andrey Breslav
09a1736ab6
Recovery in qualified expressions
2013-12-05 13:02:06 +04:00
Andrey Breslav
1e2eb6dfa1
Special instructions added for calls and other constructs
2013-12-05 13:00:44 +04:00
Andrey Breslav
0a3557d331
Rename class
2013-12-05 12:56:16 +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
77d8a745bd
Print the entire bytecode upon ASM verification failure
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
4ecd1a8f68
Don't fail when using Unit class object as a value
...
#KT-4243 Fixed
2013-12-04 15:57:52 +04:00
Alexander Udalov
fa7076a4fa
Fix ClassCastException with nullable chars
...
#KT-4210 Fixed
#KT-4098 Fixed
#KT-4251 Fixed
2013-12-04 15:57:52 +04:00
Alexander Udalov
4aa6a42483
Support codegen of empty for-loop
...
#KT-3009 Fixed
EA-35742 fixed
2013-12-04 15:19:56 +04:00
Alexander Udalov
61ff9eb45b
Support codegen of empty do-while-loop
...
#KT-3009 In Progress
2013-12-04 15:19:56 +04:00
Alexander Udalov
9058272528
Support codegen of empty while-loop
...
#KT-3009 In Progress
2013-12-04 15:19:56 +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
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
Alexander Udalov
550df37056
Delete JetScope.getObjectDescriptors()
2013-12-02 19:56:11 +04:00
Alexander Udalov
9e6cc829fb
Delete WritableScopeImpl.addObjectDescriptor()
2013-12-02 19:56:10 +04:00
Alexander Udalov
ce481b08d8
Fix CompileKotlinAgainstCustomBinariesTest
...
The two cases are almost irrelevant now that objects aren't resolved to
properties anymore
2013-12-02 19:56:08 +04:00
Alexander Udalov
42839fa061
Delete LoadKotlinCustomTest
...
It's useless now because enums are loaded the same way from binaries as well as
from sources
2013-12-02 19:56:08 +04:00