Alexander Udalov
d373c09cfb
Generate REPL interpreter tests
2014-08-13 15:13:17 +04:00
Alexander Udalov
9ae95c1e5c
Generate codegen tests on scripts
2014-08-13 15:13:17 +04:00
Alexander Udalov
b54d2ac0c5
CLI: don't fail on a wrong "-script" usage
2014-08-13 11:10:42 +04:00
Alexander Udalov
96b7ad075c
Minor, use a simple MessageCollector in ScriptTest
2014-08-13 11:10:40 +04:00
Alexander Udalov
1d2dbca27a
Minor, move utility method out of an interface
2014-08-13 11:10:40 +04:00
Alexander Udalov
97e57e3e3d
CLI: change "-suppress warnings" option to "-nowarn"
...
Following the rule of the least surprise: this option is named "-nowarn" in
other JVM language compilers. Besides, having an option with an argument which
can take exactly one predefined value is sort of confusing
2014-08-13 11:10:40 +04:00
Alexander Udalov
cf431ffab0
CLI: change argument naming convention
...
As in all other Unix/POSIX tools and JVM language compilers, multiple words
comprising the argument name should be lowercase, separated by dashes
2014-08-13 11:10:40 +04:00
Alexander Udalov
45a57011d8
Simplify and enable by default inline/optimize/assertions
...
Inline, optimize, call assertions, param assertions are turned on by default
now almost everywhere; invert their meaning
2014-08-13 11:10:37 +04:00
Alexander Udalov
160cde09d6
CLI: Support "-X" advanced options, simplify some boolean options
2014-08-13 11:10:37 +04:00
Pavel V. Talanov
6588310736
Add missing public modifiers in project code
2014-08-12 21:13:46 +04:00
zarechenskiy
34bf3d7f0e
Supress warnings in injectors using "all" parameter, not "ALL"
...
This parameter value supports by IDEA and Eclipse
2014-08-12 13:11:21 +04:00
Alexander Udalov
e20caef8c1
Regenerate tests
2014-08-11 14:33:31 +04:00
Pavel V. Talanov
1488584acf
Rewrite JavaDescriptorResolver to Kotlin
2014-08-08 19:50:55 +04:00
Alexey Sedunov
311166737f
Associate synthetic component function descriptors with corresponding
...
constructor parameters
2014-08-08 18:59:45 +04:00
Alexey Sedunov
9fee8600cb
Pseudocode: Do not generate implicit return instruction inside of
...
Unit-typed lambdas
#KT-5549 Fixed
2014-08-05 18:14:40 +04:00
Denis Zharkov
e0ced7cbcf
Boxing values merge fix. #KT-5588 Fixed
...
When merging Boxed value and something else just return MIXED_VALUE
2014-08-05 13:54:42 +04:00
Evgeny Gerashchenko
f2b1879aae
Added test for KT-1735 Can't access "assert" function from stdlib
...
#KT-1735 fixed
2014-08-04 13:38:36 +04:00
Pavel V. Talanov
8496c535aa
Replace ModuleDescriptorImpl implementation
...
Change the way modules are configured:
Add dependencies on other modules instead of adding additional package fragment providers
Refactor related code
Drop DependencyKind
Hide common new module creation in CliLightClassGenerationSupport
2014-07-31 21:25:49 +04:00
Svetlana Isakova
2ae87cae4a
Function literal expression outside the parentheses wrapped into JetFunctionLiteralArgument
...
Extracted JetFunctionLiteralArgument.moveInsideParenthesesAndReplaceWith util function
2014-07-30 17:14:00 +04:00
Svetlana Isakova
4477a96ca7
Resolve operation (unary, array access) on error element instead of ignoring it
...
(to record corresponding call for later simplification in control flow)
Generate code for unmapped arguments in control flow
2014-07-30 17:14:00 +04:00
Svetlana Isakova
3cc02c57fc
Refactoring: moved methods to call util
2014-07-30 17:07:10 +04:00
Svetlana Isakova
fb4c256d08
Added tests for choosing 'most specific' resolution candidate
...
Fixed test (while resolve with library on android): 'run' resolves to library function
2014-07-30 17:07:10 +04:00
Svetlana Isakova
eca2c7beea
Added tests on resolved calls
...
for annotation entry, delegator to super call, array access
2014-07-30 17:07:10 +04:00
Svetlana Isakova
22624186f6
Added tests for 'super' resolved calls
2014-07-30 17:07:09 +04:00
Svetlana Isakova
11ea241efb
Render candidate and resulting descriptors in resolved call tests
2014-07-30 17:07:09 +04:00
Evgeny Gerashchenko
90b065e82b
+= tests fix
2014-07-29 12:06:36 +04:00
Denis Zharkov
76845a76b9
Fixed KT-4814: check type when a += b is a = a+b
...
In cases when a += b is a = a + b, check that (a+b) can be safely casted to a
2014-07-28 22:00:14 +04:00
Alexey Sedunov
9cbcabffa4
Control-Flow Analysis: Reuse pseudo-value information for unused expression analysis
2014-07-28 13:07:37 +04:00
Alexey Sedunov
2a19016d58
Pseudocode: Add test for parenthesized call in selector
2014-07-28 13:07:34 +04:00
Alexey Sedunov
85bb4f9b8e
Pseudocode: Generate read instructions on call expression (instead of
...
callee)
2014-07-28 13:07:33 +04:00
Alexey Sedunov
77bbf8f73b
Pseudocode: Generate fake values for Unit/Nothing-typed expressions
2014-07-28 13:07:29 +04:00
Alexey Sedunov
d07deeb5fb
Pseudocode: Generate UNSUPPORTED_ELEMENT for misplaced returns
2014-07-28 13:04:02 +04:00
Alexey Sedunov
e11ffb8542
Pseudocode: Replace UnsupportedElementInstruction with UNSUPPORTED_ELEMENT magic.
...
Generate UNSUPPORTED_ELEMENT for assignments with unresolved left-han side
2014-07-28 13:04:00 +04:00
Alexey Sedunov
c32d112e67
Pseudocode: Generate magics for cast expressions
2014-07-28 13:03:12 +04:00
Alexey Sedunov
4f54d833d3
Pseudocode: Generate instructions for callable reference expressions
2014-07-28 13:03:05 +04:00
Alexander Udalov
de0f751207
Replace object$ -> OBJECT$, instance$ -> INSTANCE$ in the project
2014-07-26 00:21:05 +04:00
Alexander Udalov
fb958897a9
Introduce kotlin.Cloneable
...
- Cloneable is a trait with a single protected member 'clone', which is mapped
to java.lang.Cloneable on JVM
- 'clone' is non-abstract to be able to call 'super.clone()' in the
implementations. Also if you need your class to be Cloneable, most of the
time inheriting from Cloneable and calling 'super.clone()' will work
- hack 'super.clone()' in JVM intrinsics and TImpl delegation generation
- make arrays Cloneable, handle 'clone()' calls in the intrinsic
#KT-4890 Fixed
2014-07-25 21:19:39 +04:00
Alexander Udalov
f3309d1fa7
Don't ignore methods of Object in tests
...
Ignore methods of kotlin.Any instead
2014-07-25 21:19:39 +04:00
Alexander Udalov
a79398fa00
Don't load Object as a supertype for Java classes
...
#KT-4890 In Progress
#KT-5002 Fixed
2014-07-25 21:19:37 +04:00
Svetlana Isakova
8c13a76805
KT-5527 Double TYPE_MISMATCH diagnostic when returns object
...
#KT-5527 Fixed
2014-07-25 21:17:31 +04:00
Zalim Bashorov
a811de9bbd
Minor: Unit.VALUE -> Unit in Java code.
2014-07-25 21:03:10 +04:00
Zalim Bashorov
4a8519615a
Unit.VALUE -> Unit in code.
2014-07-25 17:16:40 +04:00
Alexander Udalov
19b80f57cf
Support "-d" option in kotlinc-jvm
...
The intent is to unify "-output" and "-jar" options into the one "-d"
(destination)
2014-07-23 21:24:40 +04:00
Alexander Udalov
de0fd3818c
Drop "-src" in kotlinc-jvm
...
Free arguments should be used instead
2014-07-23 21:24:39 +04:00
Alexander Udalov
125c5e2942
Drop "-printArgs"
2014-07-23 16:01:12 +04:00
Alexander Udalov
5003a2f570
Send compiler output to stderr instead of stdout
...
Test only stderr in kotlinc test now and move the '-script' test to integration
tests where both stdout and stderr is tested
2014-07-23 16:01:11 +04:00
Denis Zharkov
18cb479ef3
When2Switch: tests for non-literal expression in when by integral
2014-07-21 17:13:57 +04:00
Denis Zharkov
8d8c3d2b9e
When2Switch: generate ifnonnull check for nullable values before *switch-opcode
2014-07-21 17:13:56 +04:00
Denis Zharkov
d4cb822ee8
When by String constants:
...
Generate TABLESWITCH/LOOKUPSWITCH bytecode operation for when operator by String constants
2014-07-21 17:13:56 +04:00
Denis Zharkov
5a1c995b5c
When by enum:
...
Generate TABLESWITCH/LOOKUPSWITCH bytecode command in case of "when" by enum entries
2014-07-21 17:13:55 +04:00