Evgeny Gerashchenko
b1847698a8
Better jar names for runtime/builtins/jdk-annotations in tests.
2013-01-15 19:41:41 +04:00
Andrey Breslav
69080b72af
When generating light class for package, do not generate other classes
2013-01-14 20:20:21 +04:00
Andrey Breslav
a91b113cc3
GenerationStrategy is now a strategy
2013-01-14 20:20:20 +04:00
Andrey Breslav
380c8b596a
The slow (synchronized) java.util.Stack replaced by com.intellij.util.containers.Stack
2013-01-14 20:20:10 +04:00
Andrey Breslav
b5aa44ae49
GenerationState is constructed with BindingContext, not full AnalyzeExhaust
2013-01-14 15:19:50 +04:00
Maxim Shafirov
c293fe124d
Regression test for KT-3238. The issue itself is incorrect but test may be useful
2013-01-13 03:09:40 +04:00
Andrey Breslav
f26412aae4
Utility methods moved to a utility class
2013-01-10 16:16:49 +04:00
Alexander Udalov
4cebd3f75b
Fix last if-statement in block codegen
...
#KT-3203 Fixed
2013-01-10 14:05:28 +04:00
Evgeny Gerashchenko
e03eaf6dde
Removed @author javadocs from code.
2012-12-28 17:44:31 +04:00
Natalia.Ukhorskaya
e9d1171d6d
Fix VerifyError for enum constructor with default arguments
2012-12-27 12:29:09 +04:00
Natalia.Ukhorskaya
808c5abc0f
Generate constructor without parameters if primary constructor has only parameters with default values
...
#KT-3085 Fixed
2012-12-27 12:29:06 +04:00
Natalia.Ukhorskaya
d4a8ed5ae6
Minor refactoring in tests
2012-12-27 12:29:05 +04:00
Natalia.Ukhorskaya
538aa869b4
Constructor with default arguments for inner class
...
#KT-2852 Fixed
2012-12-27 12:29:01 +04:00
Andrey Breslav
7995013abb
main() added to quickly compile runtime for tests
2012-12-07 21:54:11 +04:00
Natalia.Ukhorskaya
a739964c74
Back-end: write correct visibility flags for private inner classes
2012-12-06 17:25:13 +04:00
Natalia.Ukhorskaya
17fa105116
Generate INVOKESPECIAL instruction for private method with default argument
2012-12-06 15:20:43 +04:00
Alexander Udalov
09161d41c9
Regenerate tests
2012-12-03 18:22:15 +04:00
Alexander Udalov
c9bdfd2f07
Generate compareTo() properly
...
Take into account:
1) resolved call to compareTo (instead of always calling Comparable's method)
2) types of both caller and callee, when primitive, to avoid wrong casting
(instead of always using caller's type)
#KT-3078 Fixed
2012-11-28 17:45:38 +04:00
Evgeny Gerashchenko
efc67f3d89
Rewritten CheckLoadVariablesTableTest to test generation framework.
2012-11-28 15:08:57 +04:00
Nikolay Krasko
85f7b4069f
Clean up test data after end of the test
2012-11-27 17:32:49 +04:00
Alexander Udalov
8e740a3ee4
Fix .put() for some stack values
...
#KT-3087 Fixed
2012-11-26 16:06:47 +04:00
Alexander Udalov
9d3907ff98
When-statements & correct line numbers
2012-11-22 22:32:21 +04:00
Alexander Udalov
aa898725fc
Mark line numbers on compile-time constants
2012-11-22 22:32:17 +04:00
Alexander Udalov
0f496eac21
Try-catch-finally statements & correct line numbers
2012-11-22 22:32:14 +04:00
Alexander Udalov
ca587513e3
Fix for finally before empty return
2012-11-22 22:32:10 +04:00
Alexander Udalov
99a908e8fe
If-then-else statements & correct line numbers
...
#KT-3036 Fixed
2012-11-22 22:31:58 +04:00
Alexander Udalov
8564c20baa
Fix condition generation of empty if
2012-11-22 22:31:53 +04:00
Alexander Udalov
af601b5a90
Single-branch if-statements
...
Single-branch if-expressions are now compiled to statements if the result is
not used
#KT-3036 In Progress
2012-11-22 22:31:40 +04:00
Alexander Udalov
9c7724b7f9
Introduce CodegenStatementVisitor
...
Which will be used for generating statements (as opposed to generating
expressions always, as it is now)
Add StatementGenTest, which will check if we actually generate statements and
not expressions of type Unit, popping them off the stack later
2012-11-22 22:07:01 +04:00
Alexander Udalov
cb08d27970
Refactor LineNumberTest
...
Allow passing custom expected & actual line numbers instead of those before
calls to test.lineNumber()
2012-11-22 18:54:22 +04:00
Natalia.Ukhorskaya
961fde3c8a
Remove redundant abstract tests. Use AbstractCodegenTest instead
2012-11-20 14:35:58 +04:00
Natalia.Ukhorskaya
3fc2e5d20c
Attempt to split long or double on the stack exception
...
#KT-3042 Fixed
2012-11-20 13:35:30 +04:00
Natalia.Ukhorskaya
900788a8e0
Fix javaClass property for long and double
...
#KT-3046 Fixed
2012-11-19 21:19:48 +04:00
Pavel V. Talanov
7bb7445c57
Fix for invoking abstract method in enum
2012-11-19 20:18:45 +04:00
Andrey Breslav
7e7e779e80
No printing of verbose compiler output in Ant task and REPL
2012-11-13 19:38:20 +04:00
Natalia.Ukhorskaya
ba2eab526a
Extension properties in class: don't put receiver on stack for GETFIELD/PUTFIELD instruction
...
#KT-3031 Fixed
2012-11-13 19:03:20 +04:00
Andrey Breslav
cca21e96c1
Progress class moved to jvm backend
2012-11-13 13:45:44 +04:00
Evgeny Gerashchenko
3fce07b83a
Arranged generator classes into packages to make it possible to compile GenerateInjectors separately.
2012-11-12 20:40:23 +04:00
Evgeny Gerashchenko
47dd399cdd
Regenerated tests.
2012-11-12 19:54:22 +04:00
Evgeny Gerashchenko
7b677d7ff1
Moved test generating code into TestsGenerator, got rid of duplicates.
2012-11-12 18:30:50 +04:00
Natalia.Ukhorskaya
b5a3486131
Back-end: correct indexes of local variables for double and long
...
#KT-3033 Fixed
2012-11-12 15:03:54 +04:00
Natalia.Ukhorskaya
94fbf2bdf4
Add labels for extension properties
...
#KT-2824 Fixed
2012-11-12 13:23:00 +04:00
Alexey Sedunov
8cff709bfb
#KT-3023 Fixed
2012-11-07 18:33:21 +04:00
Alexander Udalov
415b6f8efe
Generate bridges for super-calls only when needed
...
#KT-2887 Fixed
2012-11-07 17:06:19 +04:00
Alexander Udalov
89b8bbec57
Do not add extra 'this' parameter for TImpl's accessor
...
Fixes weird cases like super-call from a closure inside a trait with a required
class
2012-11-07 17:06:18 +04:00
Alexander Udalov
2edb89b5c5
Refactor mysterious code in ExpressionCodegen
...
'super' receiver is now generated in visitSuperExpression()
2012-11-07 17:06:17 +04:00
Alexander Udalov
cd35a6626e
KT-2963 VerifyError using traits with required classes
...
#KT-2963 Fixed
2012-11-07 17:06:14 +04:00
Natalia.Ukhorskaya
f139b637f3
Automatically cast error for intrinsic methods in array
...
#KT-2997 Fixed
2012-11-07 16:28:46 +04:00
Natalia.Ukhorskaya
91e83c2860
Wrong instruction for invoke private function
...
#KT-2202 Fixed
2012-11-02 11:49:10 +04:00
Natalia.Ukhorskaya
481afeb914
Use getfield or putfield instructions for private properties instead of invokevirtual getA or setA
2012-11-02 11:18:47 +04:00