Michael Nedzelsky
2fa34ae170
KT-9883 prohibit using spread operator for nullable value
...
#KT-9883 Fixed
2015-11-26 19:42:34 +03:00
Stanislav Erokhin
63fa71606f
Create new Tower Resolve
2015-11-26 16:21:49 +03:00
Stanislav Erokhin
67abdd755f
Created kind in LexicalScope
2015-11-26 15:40:00 +03:00
Michael Bogdanov
2d3d526ccd
Fix for KT-10110: ClassReader$BadClassFile undeclared type variable: E
...
#KT-10110 Fixed
2015-11-26 13:29:30 +03:00
Dmitry Petrov
9ccb1fd506
KT-9601, KT-10103:
...
Chose maximally specific function in callable reference
#KT-9601 Fixed
#KT-10103 Fixed
2015-11-26 12:52:12 +03:00
Nikolay Krasko
29a9ba64ca
Move creating sink for extra diagnostics into generation state to take responsibility for correct diagnostics suppression
2015-11-26 00:24:38 +03:00
Nikolay Krasko
652eeca872
Allow suppress additional diagnostics for JVM target
...
Suppression doesn't work without resolved annotation in binding context.
2015-11-26 00:24:38 +03:00
Stanislav Erokhin
28226906da
Minor. removed usages ExpressionReceiverImp
2015-11-25 20:53:40 +03:00
Stanislav Erokhin
f0cefd5583
Create hacks for magic annotations NoInfer, OnlyInputTypes and LowPriorityInOverloadResolution.
2015-11-25 20:53:39 +03:00
Mikhail Glukhikh
a53ad098d6
Codegen test for smart cast to Nothing?
2015-11-25 18:26:25 +03:00
Mikhail Glukhikh
89e56093a2
Limit "always null" scope: only for !!, is and dot; senseless comparison rolled back; "smart constant" information for nulls #KT-10029 Fixed
2015-11-25 18:26:08 +03:00
Dmitry Petrov
db42941586
Allow annotation constructor calls
...
in default parameter value expressions of anonymous classes
(if it is not a compile-time constant, it will be reported separately).
#KT-10136 Fixed
2015-11-25 18:06:08 +03:00
Dmitry Petrov
da90c21284
Warn about comma-separated conditions in when without argument.
...
See KT-5143.
2015-11-25 15:39:23 +03:00
Mikhail Glukhikh
b9e9c47b28
Using of enum entries as types is now forbidden #KT-5401 Fixed
2015-11-25 13:33:16 +03:00
Michael Bogdanov
3da463be27
Fix for KT-10137: Internal error: couldn't inline method call on lambda taking extension function parameter
...
#KT-10137 Fixed
2015-11-24 16:32:06 +03:00
Michael Bogdanov
d4369c1df9
Keep inline transformation invariant: all captured parameters stored in topmost lambda/object
...
Fix for KT-8668: java.lang.ClassFormatError: Duplicate field name&signature (based on property access)
#KT-8668 Fixed
2015-11-24 16:32:05 +03:00
Alexey Sedunov
b75665a96a
Misc: Do not use resolved call of outer expression if current call expression has no callee
...
#KT-10105 Fixed
2015-11-24 14:03:42 +03:00
Michael Nedzelsky
a01a18cb1a
fix test data for K2JsCliTest
2015-11-24 13:30:16 +03:00
Dmitry Petrov
931463af0d
- Fix code generation for inlined String::plus
...
#KT-10131 Fixed.
- Make extra factory methods in IntrinsicMethod protected.
This ensures that any of them can be properly overridden.
2015-11-24 12:09:34 +03:00
Michael Nedzelsky
a7636126a1
fix tests for js
2015-11-23 22:32:40 +03:00
Michael Nedzelsky
c80c33efb6
add kjsm option for kotlin js command line compiler
2015-11-23 22:32:32 +03:00
Nikolay Krasko
a62e6f7737
Refactoring: extract ObservableStorageManager from LoggingStorageManager
2015-11-23 22:03:32 +03:00
Mikhail Glukhikh
284c1b2ec5
Local sealed classes are deprecated
2015-11-23 17:29:16 +03:00
Dmitry Petrov
048e96ef6a
Fix safe call code generation for ranges.
2015-11-23 10:34:08 +03:00
Ilya Gorbunov
32151c077e
Replace map { ... }.filterNotNull() with mapNotNull { ... }
2015-11-21 00:54:01 +03:00
Mikhail Glukhikh
cd1b58f2eb
Final in interfaces: deprecation ---> error + relevant test fixes
2015-11-20 15:43:19 +03:00
Pavel V. Talanov
6bb89021dd
Rename: KtClassInitializer -> KtAnonymousInitializer
2015-11-19 22:57:05 +03:00
Pavel V. Talanov
bdc64f322c
Add script codegen tests with package statements
...
Tests codegen annotating visitor
2015-11-19 22:57:03 +03:00
Pavel V. Talanov
405cfa439d
Repl test: behave closer to real repl
2015-11-19 22:57:02 +03:00
Pavel V. Talanov
ad58617753
Script refactoring, codegen tests: change test data according to semantics change
...
Add some new tests for uncovered cases
2015-11-19 22:57:01 +03:00
Pavel V. Talanov
2b955bc6ec
Script refactoring, frontend tests: changes according to semantic changes in scripts
...
Add checker tests for scripts
2015-11-19 22:56:57 +03:00
Pavel V. Talanov
efa4bf1d74
Script refactoring, frontend: Treat scripts as classes (as opposed to function bodies)
...
ScriptDescriptor implements ClassDescriptor
Scripts are accessible in IDE via stub index
Replace special treatment of scripts with generic mechanism in several cases
Scripts to longer generate 'rv' property for storing result value (changes in repl required)
2015-11-19 22:56:57 +03:00
Pavel V. Talanov
daa1a08213
Script refactoring, parser: wrap statements in script as if they are init blocks of a class
2015-11-19 22:56:54 +03:00
Dmitry Petrov
42b587b0d5
Prohibit callable references to annotation class constructors.
...
See KT-4391.
2015-11-19 18:31:20 +03:00
Mikhail Glukhikh
3a4f6d8226
Smart cast impossible on when subject is no more recorded #KT-10061 Fixed
2015-11-18 18:02:59 +03:00
Alexander Udalov
cb05a8d58d
Don't use originalToVariableSubstitutor in supertype constraints
2015-11-18 16:40:48 +03:00
Alexander Udalov
178ca3daae
Add call to type variable and mapping descriptor -> variable
...
Since type parameter descriptor represents a single declaration of a type
parameter, multiple variables in one system may correspond to one type
parameter (e.g. in case of nested calls). Hence it's not possible to map type
parameters uniquely onto type variables and additional information is required
2015-11-18 16:40:47 +03:00
Alexander Udalov
27ce61a3be
Always alpha-convert non-external type parameters before registering in system
2015-11-18 16:40:45 +03:00
Alexander Udalov
e50eb50299
Make getNestedTypeVariables() an utility
2015-11-18 16:40:44 +03:00
Alexander Udalov
d72a4c8037
Cleanup constraint system, convert functions to properties, delete unused
2015-11-18 16:40:41 +03:00
Alexander Udalov
265c135e89
Rename ConstraintSystemImpl -> ConstraintSystemBuilderImpl
2015-11-18 16:40:40 +03:00
Alexander Udalov
bb918a2742
Move mutating methods of ConstraintSystem to Builder
...
Extract immutable ConstraintSystemSnapshot from ConstraintSystemImpl
2015-11-18 16:40:39 +03:00
Alexander Udalov
393852bf70
Simplify signature of ConstraintSystem#registerTypeVariables
...
Drop unused variance from TypeBounds and ConstraintSystem, provide default
values, inline methods used only once
2015-11-18 16:40:37 +03:00
Dmitry Petrov
9856af48ca
Drop createQualifier: testData update
2015-11-18 14:35:53 +03:00
Dmitry Petrov
b532fa2bbf
Properly resolve values in 1st qualifier part (see implicitReceiverProperty test).
...
Look into QUALIFIER for left-most "unrolled" qualified expression
in CallExpressionResolver#getQualifiedExpressionTypeInfo.
Drop some unused functions.
2015-11-18 14:35:53 +03:00
Dmitry Petrov
16dcc0b288
Introduce Receiver as a common superclass of QualifierReceiver and ReceiverValue.
...
QualifierRecevier is no longer a subclass of ReceiverValue.
2015-11-18 14:35:52 +03:00
Nikolay Krasko
2ff0b13808
Run psi check on light classes from compiled Kotlin
2015-11-18 13:34:25 +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