Nikolay Krasko
2ff0b13808
Run psi check on light classes from compiled Kotlin
2015-11-18 13:34:25 +03:00
Dmitry Jemerov
9e0ec80c6a
Merge branch 'KT-1396' of https://github.com/mcgee/kotlin into mcgee-KT-1396
2015-11-17 18:49:44 +01:00
Dmitry Jemerov
bf35099e0c
use "destructuring declarations" term instead of "multi-declarations"
2015-11-17 18:43:26 +01:00
Anton Sukhonosenko
bec6621654
#KT-1396 Fixed
2015-11-17 19:33:18 +03:00
Mikhail Glukhikh
fe13f39de9
Use of uninitialized variables in lambdas / object literals / local functions is forbidden now #KT-4475 Fixed
...
Local declarations CFA: variable initialization information before them is now taken into account
2015-11-17 18:21:09 +03:00
Denis Zharkov
fa99ea1e98
Generate type-safe barrier in method body
...
In cases when signature of special bridge is the same as current method,
but type is not 'Any?'.
Also there is tiny optimization:
only null check needed if value parameter type is mapped to Object,
but it's not nullable.
#KT-9973 Fixed
2015-11-17 16:27:02 +03:00
Denis Zharkov
1f704e0c4d
Minor. Split BytecodeText tests about special builtin bridges
2015-11-17 16:27:02 +03:00
Denis Zharkov
3b2719735e
Setup default values for type-safe bridges
...
#KT-9973 In Progress
2015-11-17 16:27:01 +03:00
Denis Zharkov
f5a086140e
Refine special bridge generating rule
...
Generate special bridge even in case current class has Kotlin superclass implementing
this builtin method, but that super class was generated without special bridge
(e.g. because it would have the same signature)
#KT-9901 Fixed
2015-11-17 15:41:49 +03:00
Denis Zharkov
abf7ae547e
Minor. Move tests
2015-11-17 15:41:48 +03:00
Mikhail Glukhikh
811ba8110f
Implicit receiver smart casts implementation and highlighting
2015-11-17 10:26:42 +03:00
Valentin Kipyatkov
2e2dfcb4a0
"invoke" from function types do not have any meaningful parameter names
2015-11-16 18:24:37 +03:00
Mikhail Glukhikh
dd43674426
Data class must have at least one argument is reported on constructor parameter list now, if any #KT-9999 Fixed
2015-11-16 10:45:54 +03:00
Mikhail Glukhikh
86c37deaee
Overriden setter now cannot weaken visibility #KT-3369 Fixed
2015-11-16 10:45:21 +03:00
Mikhail Glukhikh
02fb19c3ea
Inner classes are no more allowed inside enum entries #KT-9750 Fixed
...
Forbidden use-case deleted from codegen tests
2015-11-16 10:44:20 +03:00
Ilya Gorbunov
3f4430087e
Do not call deprecated public getProgressionFinalElement, call internal getProgressionLastElement instead.
...
ProgressionIterators do not compute final element by themselves, but use one computed by Progression.
Update testdata for LoadBuiltinsTest
2015-11-13 21:38:22 +03:00
Ilya Gorbunov
96f301fdec
Support only integer primitive ranges and progressions in optimized for loop codegen.
...
Do not call getProgressionFinalElement, use new progression properties 'first' and 'last' instead.
2015-11-13 20:58:18 +03:00
Ilya Gorbunov
5d4e72ed7f
Correct deprecation replacement for Progression constructors.
...
Update testdata for LoadBuiltinsTest
2015-11-13 18:59:38 +03:00
Denis Zharkov
e920ce709b
Render captured type parameters in verbose mode
2015-11-13 14:59:04 +03:00
Denis Zharkov
7500447e72
Implement serialization of inner types
2015-11-13 14:59:03 +03:00
Denis Zharkov
8cb85759c7
Fix written generic signature in case of inner types
2015-11-13 14:59:03 +03:00
Denis Zharkov
9c8ad9e442
Fix AbstractWriteSignatureTest
...
It didn't check anything in tests with class signatures
2015-11-13 14:47:29 +03:00
Denis Zharkov
c5103f9ac4
Fix JavaClassifierType.getTypeArguments impls
...
Make them return arguments both for current classifier and for the outer one
2015-11-13 14:47:28 +03:00
Denis Zharkov
deea0643ad
Refine type arguments resolution and rendering
...
In case of type constructors captured parameters from outer classes
#KT-5510 Fixed
#KT-3112 Fixed
#KT-6325 Fixed
#KT-408 Fixed
#KT-6337 Fixed
2015-11-13 14:47:28 +03:00
Michael Bogdanov
7e8e4e9e1b
Fix for KT-2789: NoSuchMethodError when calling trait function with default arguments that returns generic type, KT-9428 Abstract method with one parameter and one default parameter produces NoSuchMethodError, KT-9924 NoSuchMethod when replacing generic with specific type
...
#KT-2789 Fixed
#KT-9428 Fixed
#KT-9924 Fixed
2015-11-13 10:14:01 +03:00
Michael Bogdanov
3f995935d3
Fix for KT-9022: Wrong result when use break in if condition
...
#KT-9022 Fixed
2015-11-13 10:14:00 +03:00
Zalim Bashorov
2944e998f7
Minor: don't trim file content in KotlinTestUtils#doLoadFile
2015-11-12 13:43:18 +03:00
Zalim Bashorov
28366a0bf4
Fix refer to classes from default package in SMAP
2015-11-11 22:59:05 +03:00
Ilya Gorbunov
3639afafce
Deprecated with ERROR preconditions with eager message.
2015-11-11 19:00:03 +03:00
Ilya Gorbunov
07c570f35d
Replace getStackTrace usages in j2k and testData.
2015-11-11 18:59:56 +03:00
Michael Bogdanov
3651ec9294
Support access to protected members within inline functions
2015-11-11 14:34:48 +03:00
Michael Bogdanov
5a8ead0092
Fix for KT-8204: java.lang.VerifyError for super method invocation in inline function
...
#KT-8204 Fixed
2015-11-11 14:34:47 +03:00
Ilya Gorbunov
0fb8419bd1
Update testdata for LoadBuiltinsTest
2015-11-11 03:53:54 +03:00
Ilya Gorbunov
55d4d17dc3
Fix dropped DoubleRange and FloatRange usages in tests
2015-11-11 03:53:49 +03:00
Ilya Gorbunov
6bac3e1986
Drop Ranges, Progressions, ProgressionIterators for Double and Float.
...
Undeprecate generic Comparable.rangeTo, but return private implementation instead.
Undeprecate contains and coerceIn for generic ranges.
2015-11-11 03:53:47 +03:00
Ilya Gorbunov
4d2f9b82da
reversed() behavior changed for progressions. Stepped progression behavior changes: 'end' property is now deprecated, use 'last' instead.
2015-11-11 03:53:45 +03:00
Ilya Gorbunov
5f675c55ed
Fix deprecated ranges and range member usages in tests.
2015-11-11 03:53:42 +03:00
Ilya Gorbunov
25da037868
Update range iteration tests and regenerate test data.
2015-11-11 03:53:37 +03:00
Ilya Gorbunov
5e6d16103e
Remove deprecated ranges from tests and take into account that Byte and Short rangeTo now returns IntRange.
2015-11-11 03:53:31 +03:00
Stanislav Erokhin
a3b11f4214
Created warning for KT-9805
...
#KT-9805 In Progress
2015-11-11 01:26:20 +03:00
Mikhail Glukhikh
0d35033106
Introduction of CastedClassReceiver and its handling in codegen #KT-6744 Fixed
...
ClassReceiver converted to Kotlin
Also #KT-7617 Fixed
2015-11-10 20:20:51 +03:00
Michael Bogdanov
a5771c6c1c
Fix for KT-9939: java.lang.VerifyError: Bad type on operand stack for Boolean convenience accessor
...
#KT-9939 Fixed
2015-11-10 16:17:52 +03:00
Alexander Udalov
1576160390
Improve implementation of callable reference superclasses
...
Previously to use reflection on them, you had to wrap an already created object
with a "Reflection.function" or "Reflection.propertyN" call, which the JVM
back-end was doing. This was not optimal in several senses and current solution
fixes that
2015-11-09 22:24:40 +03:00
Alexander Udalov
1c889c4e67
Support equals, hashCode, toString for ::-references without reflection
2015-11-09 22:24:39 +03:00
Mikhail Glukhikh
b468d5b0c6
No smart casts to Nothing?
2015-11-09 16:36:37 +03:00
Mikhail Glukhikh
2d9fbf5696
Always null detection
2015-11-09 16:36:34 +03:00
Michael Bogdanov
7147c84396
Fix for KT-9897: Cannot pop operand off an empty stack" with -= on ArrayList element
...
#KT-9897 Fixed
2015-11-09 16:17:24 +03:00
Mikhail Glukhikh
873550b0bb
lateinit setter now must have the same visibility as its property visibility
2015-11-06 13:34:00 +03:00
Michael Bogdanov
9d3fa7da80
Test for obsolete KT-8189: java.lang.UnsupportedOperationException: Don't know how to generate
...
#KT-8189 Obsolete
2015-11-06 12:17:07 +03:00
Michael Bogdanov
0619ef47ac
Fix for KT-9877: CompilationError: Cannot pop operand of empty stack
...
#KT-9877 Fixed
2015-11-06 11:46:13 +03:00