Svetlana Isakova
39450dd954
resolve function literal expression (as parameter) after resolve call
...
(therefore only once)
while resolve use FAKE_FUNCTION_TYPE as type
for function literal (which is a subtype/supertype for any function type)
2012-11-20 19:54:55 +04:00
Svetlana Isakova
473a969598
ArgumentTypeResolver introduce
...
(component used in CallResolver)
2012-11-20 19:54:54 +04:00
Svetlana Isakova
e8f9097127
do not mark error type
...
if the expression is resolved to namespace
(EXPRESSION_EXPECTED_NAMESPACE_FOUND error)
2012-11-20 19:54:45 +04:00
Svetlana Isakova
d0a6f6252d
fixed: DEBUG_INFO_ERROR_ELEMENT should be visible in tests
2012-11-20 19:53:03 +04:00
Svetlana Isakova
993d3a3469
added tests for resolve
...
(to test performance issues)
2012-11-20 17:59:20 +04:00
Evgeny Gerashchenko
837cf38e91
Temporarily disabled assert in SignaturesPropagation which fails due to bug in IDEA.
2012-11-20 17:20:02 +04:00
Evgeny Gerashchenko
8252c51ebc
Extracted method checking that loaded functions override super functions correctly.
2012-11-20 17:20:02 +04:00
Evgeny Gerashchenko
60f30732ed
Supported several load from Java errors per declaration.
2012-11-20 17:20:02 +04:00
Evgeny Gerashchenko
4525e05268
Throwing exception only if no loading errors happened.
2012-11-20 17:20:02 +04:00
Evgeny Gerashchenko
b09e0aa520
Added assert that we load consistent method hierarchy from Java.
2012-11-20 17:20:01 +04:00
Evgeny Gerashchenko
41f5c64607
Fixed external annotations for listIterator() of AbstractSequentialList and LinkedList.
...
Now they return MutableListIterator instead of read-only one.
2012-11-20 17:20:01 +04:00
Evgeny Gerashchenko
059c6d0673
Added tests for signatures propagation.
2012-11-20 17:20:01 +04:00
Evgeny Gerashchenko
7e56d6eed8
Replaced indexed for loops with foreach.
2012-11-20 17:20:00 +04:00
Evgeny Gerashchenko
1a216c22f2
Minor. Renamed getC -> getChar
2012-11-20 17:20:00 +04:00
Evgeny Gerashchenko
d37bdbc07d
Saving and loading projection kind of array element type in bytecode.
2012-11-20 17:20:00 +04:00
Evgeny Gerashchenko
21e97b408c
Loading java arrays as Array<out T> at method return type position, as well.
2012-11-20 16:16:47 +04:00
Evgeny Gerashchenko
d2a308964d
Skipping java.util.Collection and similar classes in JdkAnnotationsSanityTest.
2012-11-20 16:16:47 +04:00
Evgeny Gerashchenko
d1f217f2df
Minor. LinkedHashMap for easier output parsing.
2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko
62b89655b9
Simplified calculateTypeArgumentsFromSuper and added samples in comments.
2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko
f20c4dac15
Cleanup in tests.
2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko
5ff718b94c
Minor. Renamed variables where 'projection kind' term should be used instead of 'variance'.
2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko
4a37c130df
Minor. Better name for CollectionClassMapping class.
2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko
f287e2b55d
Minor. Various fixups after code review.
2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko
94cad16d1d
Moved all code relevant to signatures propagation to separate class.
...
#KT-2776 in progress
2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko
00bed4a2a4
Added tests with two superclasses.
...
#KT-2776 in progress
2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko
3b63e6e061
Supported variance propagation.
2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko
9177080d8b
Fixed loading variance from alternative signature.
2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko
c5e9deb906
Reverted modification in TypeTransformingVisitor in "Renamed & moved AllInjectorsGenerator".
...
It was not relevant to that commit: it was squashed accidentally during interactive rebasing.
2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko
044487cf37
Supported propagating read-onliness.
...
#KT-2776 in progress
2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko
89b413b7ad
Supported generic subclasses in submethods.
...
#KT-2776 in progress
2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko
e2d213f1fd
Loading functions from superclasses before current to avoid heisenbug.
...
Added test with two supertypes.
#KT-2776 in progress
2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko
494345ce10
Improved algorithm, added simple tests with generic types.
...
#KT-2776 in progress
2012-11-20 16:16:44 +04:00
Evgeny Gerashchenko
1f4d994480
Introduced simple propagation of nullability on loading Java.
...
#KT-2776 in progress
2012-11-20 16:16:44 +04:00
Natalia.Ukhorskaya
961fde3c8a
Remove redundant abstract tests. Use AbstractCodegenTest instead
2012-11-20 14:35:58 +04:00
Natalia.Ukhorskaya
3fc2e5d20c
Attempt to split long or double on the stack exception
...
#KT-3042 Fixed
2012-11-20 13:35:30 +04:00
Natalia.Ukhorskaya
900788a8e0
Fix javaClass property for long and double
...
#KT-3046 Fixed
2012-11-19 21:19:48 +04:00
Pavel V. Talanov
7bb7445c57
Fix for invoking abstract method in enum
2012-11-19 20:18:45 +04:00
Andrey Breslav
6384b7340c
IDEA 122.813 is required now (API of the new make depends on the new build)
2012-11-19 18:15:20 +04:00
Andrey Breslav
47e057d529
Migrate to IDEA 122.813
2012-11-19 17:04:18 +04:00
Andrey Breslav
636deb6a09
KT-3016 Exception during analyze when some function has no name
...
#KT-3016 Fixed
2012-11-19 13:44:55 +04:00
Evgeny Gerashchenko
be7989af36
Moved JVM-specific String.repeat method to StringsJVM.kt
2012-11-19 13:29:17 +04:00
Tommy Hallgren
7ccded5f6d
KT-2503 Added String.repeat method
...
#KT-2503 fixed
2012-11-17 14:43:06 +04:00
Alexander Udalov
712fafddb6
DataFlowInfo.getPossibleTypes() now returns Set
...
This solves some performance problems related to DataFlowInfo (lots of nested
conditions etc.)
2012-11-16 17:56:31 +04:00
Alexander Udalov
6c7b32dc03
Fix data flow info after inner loops with continue-outer
...
ControlStructureTypingVisitor.containsBreak() is refined and now also takes
into account continue to outer loops
2012-11-16 17:56:30 +04:00
Alexander Udalov
d1de446ae0
Fix & optimize DataFlowInfo.or()
...
Get complete nullability & type info before creating a new data flow info.
Don't create unnecessary data flow infos
2012-11-16 17:56:29 +04:00
Alexander Udalov
6b65c44d45
Optimize DataFlowInfo.and()
...
Instead of copying everything, we now only completely copy one data flow info
and use another as a delegation target
2012-11-16 17:56:29 +04:00
Alexander Udalov
f5ed3ff6bd
Refactor DataFlowInfo.establishSubtyping()
...
Don't create useless copies of data flow infos.
Also get rid of vararg subject variable in type-checking 'when' expression
2012-11-16 17:56:28 +04:00
Alexander Udalov
d52387a7eb
Delegating data flow info
...
A delegating data flow info can have a parent data flow info, which it queries
when is queried itself. This helps to avoid lots of copying of the same data
2012-11-16 17:56:27 +04:00
Alexander Udalov
83d56213cd
Separate DataFlowInfo into interface & implementation
2012-11-16 17:56:27 +04:00
Alexander Udalov
ed02c6c39e
Remove DataFlowInfo.CompositionOperator
...
It was used only in one place, which wouldn't suffer without it
2012-11-16 17:56:26 +04:00