Dmitry Petrov
3bbd8979e4
KT-9670: optimize Class <-> KClass wrapping/unwrapping as a special case of boxing/unboxing.
...
NB doesn't work for arrays of classes.
2016-03-04 10:14:21 +03:00
Dmitry Petrov
8660800af7
Constraint system builder shouldn't drop nullability when comparing signatures for specificity.
2016-03-03 19:23:43 +03:00
Dmitry Petrov
8a2b80fe3f
Generalize signature comparison: checking for conflicting overloads.
...
Also, vararg parameter no longer conflicts with Array<out T>
(CONFLICTING_JVM_DECLARATIONS is reported, can be avoided using @JvmName).
2016-03-03 18:26:10 +03:00
Dmitry Petrov
77b7128689
Check conflicting overloads for generic signatures.
2016-03-03 18:26:09 +03:00
Alexander Udalov
04eea69a82
Fix Java 8 codegen box tests
2016-03-03 17:08:47 +03:00
Alexander Udalov
daab3db062
Add WITH_RUNTIME and WITH_REFLECT directives to box tests
...
Currently all tests in boxWithStdlib/ run with both runtime and reflection
included; eventually they'll be merged into box/ using these directives
2016-03-03 16:11:21 +03:00
Alexander Udalov
d011fa8dc6
Add FULL_JDK to tests in codegen/boxWithStdlib/fullJdk/
...
Drop the old scheme which relied on the directory name
2016-03-03 16:08:18 +03:00
Alexander Udalov
ae14d185eb
Support setters for Java-method-based properties in reflection
...
Also heuristically support the corner case of multiple properties with the same
name and signature in a Java class, see the comment in
KDeclarationContainerImpl
#KT-11258 Fixed
2016-03-03 16:08:18 +03:00
Alexander Udalov
14b1a3a048
Don't fail on requesting members of Java collection classes
...
RuntimeTypeMapper assumed that JavaPropertyDescriptor was necessarily backed by
JavaField, which has changed when we started to load Java method (or a pair of
methods) overriding a Kotlin property as a property, not as a method. Another
example of this situation is special built-in properties which are mapped to
Java methods, e.g. java.util.Collection#size() <-> kotlin.Collection#size. This
change adds support for the case of a property backed by a JavaMethod.
Note that callable references or usage of any reflection API related to
built-in members is not supported anyway and will currently fail with errors
#KT-11258 Fixed
2016-03-03 16:08:18 +03:00
Alexander Udalov
371051b1d6
Filter out package members from other facades in KPackageImpl
...
#KT-10690 Fixed
2016-03-03 16:08:18 +03:00
Alexander Udalov
1c0bbcd72b
Fix KProperty.javaField for fake overrides
...
#KT-8131 Fixed
2016-03-03 16:08:18 +03:00
Michael Bogdanov
534a3a11d6
Write additional type parameters for DefaultImpls methods, fix for KT-11121: BadClassFile exception for interface implemented generic properties
...
#KT-11121 Fixed
2016-03-03 16:11:31 +03:00
Alexander Udalov
65662d7c99
Remove incorrect test, to be reconsidered in the future
...
Before 3ca4097 , 'set' signature was not checked at all in this case
#KT-11272 Open
2016-03-02 20:44:23 +03:00
Alexander Udalov
c93517bc2f
Minor, fix test data
2016-03-02 19:00:50 +03:00
Alexander Udalov
8e77e16bbd
Remove leftovers of platformName and platformStatic in test data
...
Drop unnecessary imports, rename some tests
2016-03-02 16:47:04 +03:00
Alexander Udalov
933be1e035
Drop single-file mode of black box codegen tests
...
Add regression test for #KT-5190
2016-03-02 15:47:39 +03:00
Alexander Udalov
2de7f38427
Migrate boxWithJava tests to multi-file framework
2016-03-02 15:47:38 +03:00
Alexander Udalov
0801ae5364
Minor, delete weird intermediate git files
2016-03-02 15:47:38 +03:00
Alexander Udalov
280ad195ee
Migrate boxAgainstJava tests to multi-file framework
2016-03-02 15:47:36 +03:00
Alexander Udalov
12cf70ac38
Delete legacy codegen tests with Java on annotations
...
After cleanup, these tests are now duplicated with those in
boxAgainstJava/annotations/
2016-03-02 15:47:35 +03:00
Alexander Udalov
9f67fe2fe3
Adapt CompileKotlinAgainstKotlin test to black box format
...
Rename/remove some obsolete test cases
2016-03-02 15:47:35 +03:00
Alexander Udalov
647e188a08
Migrate bytecode text tests to multi-file framework
...
Get rid of BytecodeTextMultifileTestGenerated
2016-03-02 15:44:28 +03:00
Dmitry Petrov
9244ef9b81
Do not use 'dup' for postfix increment/decrement: can't do it with collection element in general.
...
KT-11190, KT-11191, KT-11192, KT-11200, KT-11206
2016-03-02 14:28:06 +03:00
Dmitry Petrov
3ca4097bcc
KT-11203: report errors on read-write operations for elements of collections with inconsistent get&set signatures
2016-03-02 14:28:06 +03:00
Mikhail Glukhikh
96a7febd09
Smart cast is performed now inside 'x as? Type ?: return' safe as / elvis combination #KT-10992 Fixed
2016-03-02 10:07:33 +03:00
Dmitry Petrov
eb7cf92fbd
Minor. Add a test for KT-10732: no redeclaration for
...
fun <T> List<T>?.foo()
fun <T> List<T>.foo()
2016-03-01 13:54:03 +03:00
Michael Bogdanov
16afe74dc1
Fix for KT-11117: Android Kotlin DEX transformation error when I use arrayOf as an anonymous object property
...
#KT-11117 Fixed
2016-02-29 12:53:58 +03:00
Alexander Udalov
25cebe03e9
Fix inline codegen tests after regroup and rename
2016-02-27 15:40:06 +03:00
Alexander Udalov
f7958edf21
Improve test data format for SMAP codegen tests
...
Instead of comments in a Kotlin source file, add a .smap with the contents of
the source mapping data (and possible comments)
2016-02-27 15:40:06 +03:00
Alexander Udalov
cc84aabdcf
Migrate boxInline tests to new multi-file framework
2016-02-27 15:40:05 +03:00
Alexander Udalov
fa1f7d988e
Get rid of CompileKotlinAgainstMultifileKotlinTestGenerated and boxMultifileClasses/
...
Merge tests in boxMultifileClasses/calls to one test case; copy the two
resulting tests (+ change box to main) to compileKotlinAgainstKotlin
2016-02-27 15:40:05 +03:00
Alexander Udalov
cc8af573f9
Migrate CompileKotlinAgainstKotlin test to multi-file framework
2016-02-27 15:40:04 +03:00
Alexander Udalov
e0b6f12737
Migrate boxMultiFile and boxMultifileClass tests to new multi-file tests
...
AbstractCompileKotlinAgainstMultifileKotlinTest is broken in this commit; will
be fixed later
2016-02-27 15:40:03 +03:00
Alexander Udalov
1be6046fc2
Minor refactorings in legacy codegen tests
...
Use loadFile() + getPrefix() instead of loadFile(String)
2016-02-27 15:40:00 +03:00
Pavel V. Talanov
a4c005fefd
Update existing test data depending on diagnostic parameter rendering
2016-02-26 14:45:11 +03:00
Pavel V. Talanov
d0b27a5fe2
Update test data for diagnostics test
2016-02-26 14:45:07 +03:00
Michael Bogdanov
1b94904684
Prohibited @Strictfp annotation on classes (it's not supported yet), Fix for KT-11109: Strictfp annotation do nothing when applied to class
...
#KT-11109 Fixed
2016-02-25 18:07:51 +03:00
Denis Zharkov
4c88e2a0bc
Use original descriptor when mapping fake override
...
Otherwise wrong CONFLICTING_INHERITED_JVM_DECLARATIONS were reported
#KT-10691 Fixed
2016-02-25 11:10:48 +03:00
Michael Bogdanov
582b1c5e66
Fix for KT-11163: Incorrect codegen in case of custom compareTo on primitives
...
#KT-11163 Fixed
2016-02-25 10:16:09 +03:00
Denis Zharkov
36e84ff23a
Minor. Add tests for obsolete issues
...
#KT-8900 Obsolete
#KT-8901 Obsolete
2016-02-25 08:31:58 +03:00
Denis Zharkov
914447b7eb
Do not treat uninitialized value as a reason to retain boxing
...
See testData/simpleUnitializedMerge.kt
On exit from `if` we merge value in variable with slot 1 (x):
- from `if` body we get BoxedBasicValue
- from outer block we get UNITIALIZED_VALUE
So we just suppose `x` is unitialized after `if`
and there's no need to mark BoxedValue as unsafe to remove
because it's anyway can't be used after `if`
#KT-6842 Fixed
2016-02-25 08:31:19 +03:00
Michael Bogdanov
b20f49a2c4
Default body compilation for inline fun extracted from InlineCodegen to separate one
2016-02-24 14:06:29 +03:00
Alexander Udalov
c71c344b8a
Fix NCDFE on primitive iterators during boxing optimization
...
The real fix is in ProgressionIteratorBasicValue's constructor, other changes
are refactorings
#KT-11153 Fixed
2016-02-22 19:49:39 +03:00
Alexey Andreev
a4db14eff5
[KT-4124] Add tests for qualified labeled super access to functions and properties
2016-02-20 15:19:31 +03:00
Alexey Andreev
6adcafafbb
[KT-4124] Minor refactoring and cleanup
2016-02-20 15:19:30 +03:00
Alexey Andreev
9238afc439
[KT-4124] Fix some tests from common testData
2016-02-20 15:19:29 +03:00
Alexey Andreev
f5786dd567
[KT-4124] Add test case for nested/inner classes inside native class. Add diagnostic of inner classes inside native classes.
2016-02-20 15:19:28 +03:00
Alexey Andreev
e3c7cd0021
[KT-4124] Add diagnostic that reports of local classes. Remove test for diagnostic of nested types
2016-02-20 15:19:27 +03:00
Alexey Andreev
c705fafc95
[KT-4124] Add support for super<T>@Outer.functionName() case
2016-02-20 15:19:25 +03:00
Alexey Andreev
20b3361edc
[KT-4124] Fix test compatibility between JS and Java backed for several tests
2016-02-20 15:19:24 +03:00