Mikhail Glukhikh
d24528f6bb
Control flow analysis: nested finally blocks now appear in correct order in CFG #KT-4764 Fixed
2016-04-22 15:16:57 +03:00
Alexey Andreev
7b76fa6103
KT-11030 Remove tests for diagnostics for local classes in JS backend
2016-04-20 18:12:25 +03:00
Alexey Andreev
4ac730e5ed
KT-11030 Fix referencing wrong field generated for captured variable when this captured variable referenced both from constructor and non-constructor method. Avoid duplicate generation of call to delegated constructor.
2016-04-20 18:12:24 +03:00
Alexey Andreev
a5e0c70988
KT-11611 Prevent duplicate generation of default values of secondary constructor parameters
2016-04-20 18:12:23 +03:00
Alexey Andreev
7afca74b94
KT-11030 When constructor of object expression calls super constructor, place this call at object creation instead of object's constructor. This allows to capture outer this reference properly in certain cases. JVM backend uses the same approach
2016-04-20 18:12:23 +03:00
Alexey Andreev
b39c16cb6c
KT-11030 Fix translation of secondary constructors of inner classes
2016-04-20 18:12:22 +03:00
Alexey Andreev
3e11209d8a
KT-11030 Borrow test for local classes from JVM backend
2016-04-20 17:49:03 +03:00
Michael Bogdanov
68f5e4d10e
Added debug strata to test data
2016-04-20 17:07:14 +03:00
Michael Bogdanov
0a46cea799
TODO: optimize smap - do preproccessing
2016-04-20 17:07:10 +03:00
Michael Bogdanov
faca68297c
Updated line numbers tests
2016-04-20 17:07:09 +03:00
Michael Bogdanov
ff820bddc0
New source mapping
2016-04-20 17:07:06 +03:00
Mikhail Glukhikh
771fb0ace2
Compiler warning on identical enum constant / is type entries #KT-4829 Fixed
2016-04-20 12:21:31 +03:00
Dmitry Petrov
420c7a0285
KT-11111:
...
- override by a final inline fun is a warning
- override by a fun with reified type parameters is an error
2016-04-20 11:59:03 +03:00
Yan Zhulanow
9b1402d804
Fix "No error on increment or augmented assignment when 'get' is an operator but 'set' is not" #KT-11300
2016-04-19 19:24:38 +03:00
Alexander Udalov
9c99152126
Do not consider error results successful in '::' LHS resolution
...
Fixes EA-81649
2016-04-19 18:37:02 +03:00
Alexander Udalov
4706d4eaea
Minor, restructure parsing test case for '::'
2016-04-19 18:28:24 +03:00
Dmitry Petrov
e441f0509f
KT-11943 Do not use intrinsic 'java' property if receiver type is not acceptable
2016-04-19 10:31:30 +03:00
Natalia Ukhorskaya
7a5ab93f9e
Debugger: write line number for catch clause declaration
2016-04-15 15:58:07 +03:00
Dmitry Petrov
583733be8d
KT-11645 properly handle private property getter name mangling in reflection
2016-04-14 09:31:29 +03:00
Dmitry Petrov
511a7e0072
KT-11645 generate backing field for 'private const val' in part implementation class
2016-04-14 09:31:29 +03:00
Alexander Udalov
a8629b3836
Do not fail on unknown -X flags
...
For better compatibility if we add experimental stuff in 1.0.X compilers
2016-04-12 20:03:51 +03:00
Alexander Udalov
76d3246514
Fix type of member references without explicit class on LHS
...
Type of '::foo' for a function foo in a class A should be KFunction0<Unit>, not
KFunction1<A, Unit>. Continue to report an error in this case, to be maybe
supported in the future
2016-04-12 20:03:51 +03:00
Michael Bogdanov
be999ca4cb
Write proper start label for parameters of inline function default implementation
2016-04-12 15:31:49 +03:00
Michael Bogdanov
c52c0e2c2d
Write proper start label for inlined constructor parameters (start label was shifted by additional captured parameters injection)
2016-04-12 15:23:14 +03:00
Mikhail Glukhikh
8a0641a639
Warning about override / open redundancy is no more reported
2016-04-11 16:32:36 +03:00
Dmitry Petrov
1f3323ed32
KT-11750 Do not report REDECLARATION on descriptors which are not available in sources.
2016-04-11 09:13:07 +03:00
Dmitry Petrov
aca7050656
KT-11499 Normalize stacks on return from an inline function when the function is inlined at call site.
2016-04-08 14:52:55 +03:00
Michael Bogdanov
a6044c81ff
Write proper start label for loop parameter
2016-04-08 14:32:51 +03:00
Alexander Udalov
7c90fbe4de
Compute return type for property getters more safely
...
Do not call `isError()` on property's type right after creation of
PropertyGetterDescriptor because the property has no getter yet (it's created
but not yet stored to the property, that happens a bit later), and `isError()`
leads to computation of the delegate type, which for delegated properties
performs some complex resolution (see `VariableTypeResolver#process`) which
relies on the fact that the property already has a getter.
Since the purpose of the original change (883e2e4d ) was to support a quick fix
which would add the type to a property in an expression like "val x get() =
...", check the type (or initializer) presence in the PSI instead, this is
safer and is still suitable for the quick fix.
Also fix arguments to "wrong getter type" diagnostic: previously something
useless like "expected Int, actual Int" was reported
#KT-11809 Fixed
2016-04-07 15:35:58 +03:00
Dmitry Petrov
f1b061d662
Optimize coercion to Unit.
...
POP operations are backward-propagated.
Operation can't be transformed if its result is moved within stack
(by DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, or SWAP).
Unnecessary operations are replaced with NOPs (for debugger).
Unnecessary NOPs are removed.
KT-9922 Suboptimal generation for simple safe call with unused return value
KT-11116 Optimize methods returning Unit
2016-04-07 11:40:58 +03:00
Alexander Udalov
c4a568efff
Minor, add test cases for obsolete protected-related issues
2016-04-07 00:07:11 +03:00
Alexey Andreev
05887f45f7
KT-7819 Implement non-local returns
2016-04-06 16:16:55 +03:00
Alexey Andreev
a6e1bd1d89
KT-7819 Borrow tests for non-local returns from JVM backend
2016-04-06 16:16:55 +03:00
Dmitry Jemerov
01b0cfb552
don't parse lines starting with @ as KDoc tags if they're inside a Markdown code fence
...
#KT-11789 Fixed
2016-04-05 19:48:51 +02:00
Michael Bogdanov
dec53c8d6c
Fix for KT-11762: "VerifyError: Bad local variable type" caused by explicit loop variable type
...
#KT-11762 Fixed
2016-04-05 13:37:10 +03:00
Stanislav Erokhin
1c05308c05
Minor. Fix testdata.
2016-04-04 23:12:37 +03:00
Stanislav Erokhin
832f468b13
KT-11733 Cannot infer type parameter in SAM with nullability annotations
...
#KT-11733 Fixed
2016-04-04 15:31:30 +03:00
Michael Bogdanov
e0adfd453f
Fix for KT-11677: Generic type signatures for local classes in inlined lambdas are not written properly
...
#KT-11677 Fixed
2016-04-04 12:07:47 +03:00
Michael Bogdanov
f5166b7aef
Support test directives in inline tests
2016-04-04 12:07:46 +03:00
Michael Bogdanov
d319811101
Added test for obsolete KT-11631: Couldn't inline method call
...
#KT-11631 Obsolete
2016-04-03 14:18:13 +03:00
Ilya Gorbunov
f3f1aa8a15
Change String.subSequence parameter names to match those of CharSequence.subSequence.
2016-04-01 21:39:09 +03:00
Dmitry Petrov
1d87595dc9
binary compat validator: update testData for changes related to new facade generation
2016-04-01 10:13:22 +03:00
Dmitry Petrov
db58ebc4b2
KT-11410: Class hierarchy for parts/facade of multi-file class.
...
Preserve static initialization semantics for parts by introducing a special "clinit trigger" class.
Insert "static initialization trigger" call to every method of a part class, remove this call on inline.
Always mangle names for private functions in multifile class parts to avoid resolution clashes on inheritance.
NB in codegen tests initializers for all non-const vals are wrapped in 'run { ... }',
so that the initializer is not a constant expression, and some static initialization code should be generated.
2016-04-01 10:13:22 +03:00
Dmitry Petrov
0ccaf43e2c
KT-11410: Add Xmultifile-parts-inherit CLI option.
2016-04-01 10:13:21 +03:00
Pavel V. Talanov
d7dc122298
KT-11721 Wrong "Typechecker has run into recursive problem" on calling kotlin get function as synthetic property
...
#KT-11721 Fixed
2016-03-31 19:33:04 +03:00
Pavel V. Talanov
7de171efda
Improve message clarity for WRONG_NUMBER_OF_TYPE_ARGUMENTS diagnostics
...
#KT-9887 Fixed
2016-03-31 16:06:48 +03:00
Denis Zharkov
1511a03027
Fix SAM adapters substitution
...
Approximate sourceFunction types if it's needed
#KT-11696 Fixed
2016-03-31 14:52:12 +03:00
Denis Zharkov
bc1b34a989
Add additional visibility check for synthetic extensions
...
Use extension receiver as dispatch one, because it is effectively dispatch
(after some desugaring)
2016-03-31 14:51:57 +03:00
Denis Zharkov
92be4aee9c
Prohibit protected constructor calls that are not super-calls in subtypes
...
#KT-11649 Fixed
2016-03-31 14:51:57 +03:00
Denis Zharkov
5056c43975
Do not check receiver for protected constructor calls
...
Checks for protected constructors should be performed manually,
because they are rather complex
2016-03-31 14:51:57 +03:00