Valentin Kipyatkov
2e2dfcb4a0
"invoke" from function types do not have any meaningful parameter names
2015-11-16 18:24:37 +03:00
Valentin Kipyatkov
5b668cb6a6
KT-9970 Regression: completion doesn't see private extension functions with parametrized receiver
...
#KT-9970 Fixed
2015-11-16 18:24:37 +03:00
Valentin Kipyatkov
6a26e2fd82
Sorting overloads in completion
2015-11-16 18:24:37 +03:00
Alexey Sedunov
ac8532ffce
Quick Fixes: Implement 'Initialize with constructor parameter' quick-fix
...
#KT-6604 Fixed
2015-11-16 11:30:03 +03:00
Alexey Sedunov
138370ce5b
Quick Fixes: Implement 'Move to constructor parameters' quick-fix
...
#KT-6604 In Progress
2015-11-16 11:30:02 +03:00
Alexey Sedunov
f66af7bdd4
Quick Fixes: Implement 'Initialize property' quick-fix
2015-11-16 11:30:00 +03:00
Alexey Sedunov
aeee8bafe6
Name Suggester: Suggest parameter name for the corresponding argument expression
...
#KT-8111 Fixed
2015-11-16 11:29:59 +03:00
Mikhail Glukhikh
f21603daf2
Source code fix according to KT-4475
2015-11-16 10:55:15 +03:00
Mikhail Glukhikh
fdd9eee849
DataClassAnnotationChecker --> DataClassDeclarationChecker
2015-11-16 10:45:58 +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
6ae653e5a1
Implement stub building for inner types
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
eea898abb5
Introduce PossiblyInnerType class
...
Use it when rendering inner types, similar logic will be used in different subsystems
2015-11-13 14:58:58 +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
7ee50e043c
Use type constructor when finding findStaticallyKnownSubtype
...
See InnerClasses.testBareTypes
2015-11-13 14:47:29 +03:00
Denis Zharkov
daed74f9b2
Fix supertypes consistency check
...
See testKt5508:
`inner class B<S> : A<B<S>>()` is effectively the same as
`A<T>.B<S> : A<A<T>.B<S>>` or `B<S, T> : A<B<S, T>>`.
The latter is because we add outer class parameters to inner type constructor.
The problem is that we treat type constructors of first TP of 'A'
and of second type parameter (copy) of 'B' just the same and report INCONSISTENT_TYPE_PARAMETER_VALUES.
So we supposse it's more correct to compare type parameter descriptors instead
2015-11-13 14:47:29 +03:00
Denis Zharkov
188bcf0a03
Introduce TypeConstructorSubstitution.create
...
After latest changes type constructors of inner classes contains
additional type parameters that are copies of ones from outer class.
Their indices are correct, but they used only for subtyping check,
all entries within inner classes are still refers to original
descriptors having different indices.
Example:
class Outer<E> {
inner class Inner<F> { // Inner's type constructor looks like Inner<F, E>
fun foo(): E // refers to E in outer having index 0
}
}
Indexed substitution does not work here because of intersecting indices,
so we replace it with common map substituion in such cases.
2015-11-13 14:47:29 +03:00
Denis Zharkov
c57dbcc602
Fix substition of inner classes constructors
...
It should have substituted class as containing declaration
2015-11-13 14:47:28 +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
910718ff45
Weaken JvmRuntimeDescriptorLoaderTest assumptions
...
Sometimes descriptors in reflection may differ from compiled ones.
There is already SKIP_IN_RUNTIME_TEST but sometimes
it would be nice to record specific behaviour.
Solution is to add '.runtime.txt' near '.txt' files for tests containing
expected rendered descriptors in reflection.
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
Denis Zharkov
990bd7e71d
Correct parameters of inner's class type constructor
...
Now it contains copies of outer's class constructor parameters
They are appended just after real type parameters
2015-11-13 14:47:28 +03:00
Denis Zharkov
7b4c0fb83a
Use original type parameters for SAM adapter to constructor
...
It makes SAM descriptors more consistent with real ones
2015-11-13 14:47:28 +03:00
Denis Zharkov
d614adcd2a
Obtain type parameters of constructor from containing class
...
Effectively this commit is just inlining of 'typeParameters' parameter
2015-11-13 14:47:28 +03:00
Denis Zharkov
c9aa75259b
Introduce ClassDescriptor.declaredTypeParameters
...
Should be a subset of type constructor's parameters
2015-11-13 14:47:28 +03:00
Denis Zharkov
57094954a3
Minor. Simplify control-flow blocks
2015-11-13 14:47:28 +03:00
Denis Zharkov
b4b1d16134
Extract and cleanup 'resolveTypeForClass' and 'resolveTypeForTypeParameter'
2015-11-13 14:47:27 +03:00
Valentin Kipyatkov
e66f1c2d70
KT-9981 Code cleanup replace usages of !in incorrectly
...
#KT-9981 Fixed
2015-11-13 14:32:33 +03:00
Mikhail Glukhikh
2f4dbd2084
Code cleanup: get rid of unnecessary !! / ?. / as
2015-11-13 13:13:55 +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
Ilya Chernikov
20ca8cd435
Additional fix to the previous one: Disabling parallel builds without daemon again and undoing apprpriate fix to broken tests problem, since it effectively cancelled fix for parallel building itself and was causing exceptions on heavy builds
...
(cherry picked from commit bb66776)
2015-11-12 19:15:14 +01:00
Nikolay Krasko
0b01c8a4cf
Minor: remove warnings in KotlinCliJavaFileManagerImpl
2015-11-12 19:19:44 +03:00
Nikolay Krasko
bd4ffb9ced
Announce we are going to invalidate file to collect invalidatation trace
...
See DebugUtil.currentInvalidationTrace()
2015-11-12 19:19:43 +03:00
Nikolay Krasko
33fd247bde
Test that fails with package prefixes but works good without them
2015-11-12 19:19:42 +03:00
Nikolay Krasko
03310491d0
Update to idea 143.747.5
2015-11-12 19:19:41 +03:00
Ilya Chernikov
4643d7fc4d
Disabling parallel builds without daemon again and undoing apprpriate fix to broken tests problem, since it effectively cancelled fix for parallel building itself and was causing exceptions on heavy builds
...
(cherry picked from commit 0610452)
2015-11-12 17:15:14 +01:00
Zalim Bashorov
b7772f32ce
Minor: add more logging to KotlinBuilder
2015-11-12 18:39:43 +03:00
Dmitry Jemerov
c734cad429
fix typo: 'a' before uuid
2015-11-12 14:22:58 +01:00
Michael Bogdanov
de6731cb4b
Additional diagnostic for KT-9980: KotlinFrontEndException: Exception while analyzing expression
2015-11-12 14:38:09 +03:00
Zalim Bashorov
ca71f929f9
Add new tests for incremental compilation and disable the one for current IC
2015-11-12 13:43:25 +03:00
Zalim Bashorov
e1ad942804
Add separate build logs for tests which result is different in the new incremental compilation
2015-11-12 13:43:24 +03:00
Zalim Bashorov
5a6c04357b
Add the ability to have separate log file for experimental incremental compilation tests
2015-11-12 13:43:23 +03:00