Commit Graph

13262 Commits

Author SHA1 Message Date
Svetlana Isakova 41f2fcbb40 while resolve 'equals' as a fake call do not throw away temporary trace 2013-12-11 19:53:51 +04:00
Svetlana Isakova 499783fbc6 rename:
getAutoCastVariantsIncludingReceiver -> getAutoCastVariants
getAutoCastVariants -> getAutoCastVariantsExcludingReceiver
2013-12-11 19:53:50 +04:00
Svetlana Isakova 81e6eb8253 refactoring: removed AutoCastService
used getAutoCastVariantsIncludingReceiver util method instead
2013-12-11 19:53:50 +04:00
Svetlana Isakova ab1d27dd6b don't use data flow info while checking for receiver
receiver with smart cast is checked separately
2013-12-11 19:53:50 +04:00
Svetlana Isakova 46b77f4472 don't report unnecessary smart cast on receiver 2013-12-11 19:53:50 +04:00
Svetlana Isakova 33c04bde9a changed tests where autocasts aren't needed but are reported
due to KT-4294
2013-12-11 19:53:50 +04:00
Svetlana Isakova c30259dfbe added info about smart casts to diagnostic tests 2013-12-11 19:53:50 +04:00
Alexander Udalov 00da5fe1fb Fix VerifyError for 'when' of type 'Unit?' 2013-12-11 07:40:19 +04:00
Alexander Udalov 0d9c126485 Add regression test for KT-3634
#KT-3634 Obsolete
2013-12-11 07:40:19 +04:00
Alexander Udalov 220e4e98b7 Minor, print internal class names in CallableMethod.toString() 2013-12-11 07:40:18 +04:00
Evgeny Gerashchenko 20542d94c1 Added extra output for tests if they fail. Muted test on "bad" agents. 2013-12-09 19:04:20 +04:00
Evgeny Gerashchenko 50bea726ff Fixed exit code passing on Windows XP 2013-12-09 19:04:20 +04:00
Alexander Udalov ee554d2e2f Unwrap fake override of original
This fixes a couple of verify errors related to the order of supertypes in the
class declaration
2013-12-09 17:59:58 +04:00
Alexander Udalov 68961004a5 Collect overridden descriptors for property accessors to LinkedHashSet 2013-12-09 17:59:58 +04:00
Alexander Udalov 44ad36ef97 Minor cleanup in FunctionGenerationStrategy and inheritors 2013-12-09 17:59:58 +04:00
Alexander Udalov 7453af9f36 Minor, don't do unnecessary mapType 2013-12-09 17:58:00 +04:00
Alexander Udalov fb370a4538 Make anonymous class inner 2013-12-09 17:58:00 +04:00
Alexander Udalov 6276dd1483 Return Unit.VALUE if Unit or Any is expected
StackValue.coerce will do its job in casting void to Unit correctly

 #KT-4212 Fixed
2013-12-09 17:57:59 +04:00
Alexander Udalov f19ede0637 Don't treat values of type "Unit?" to be always equal to Unit.VALUE
Two changes here: StackValue.Constant does cast iff value is non-null (if null,
no cast between classes is really needed, as null can be an instance of
anything), and codegen for safe qualified expressions uses correct type for the
expression

 #KT-4265 Fixed
2013-12-09 15:52:19 +04:00
Alexander Udalov 96f753278c Minor, prettify code 2013-12-09 15:52:19 +04:00
Nikolay Krasko 21a0ca5840 Revert extending range of supported versions (ba96538)
Incompatibility in ClsFileImpl file:
java.lang.NoSuchMethodError: com.intellij.psi.impl.compiled.ClsFileImpl.<init>(Lcom/intellij/psi/PsiManager;Lcom/intellij/psi/FileViewProvider;)V
2013-12-09 15:45:50 +04:00
Alexander Udalov 9ba562ba3d Add more info to exception message (EA-52595) 2013-12-07 02:42:00 +04:00
Nikolay Krasko 5d62805711 Stable order for generated tests 2013-12-06 21:29:39 +04:00
Evgeny Gerashchenko e80af77c31 Added max() and min() for CharArrays. 2013-12-06 20:35:31 +04:00
nik f439604b57 standard library: 'max' and 'min' functions reimplemented to avoid unnecessary null checks
(as proposed for minBy/maxBy in https://github.com/JetBrains/kotlin/pull/324)
2013-12-06 20:22:53 +04:00
Nikolay Krasko ba96538a14 Extend range of compatible versions 2013-12-06 18:39:33 +04:00
Svetlana Isakova 4c4e192914 Fixed: control flow graph building for array of functions.
'get' call for array should be get from INDEXED_LVALUE_GET
2013-12-06 15:58:45 +04:00
Nikolay Krasko 3966f36b0c Reindex files with manual virtual file and index refresh 2013-12-06 13:15:15 +04:00
Nikolay Krasko d2b948dc2c Fix path util to return dist paths in tests 2013-12-06 13:15:14 +04:00
Andrey Breslav 71be3bcec5 All tests for TCO moved to box (with diagnostics marked up) 2013-12-06 11:29:28 +04:00
Andrey Breslav 1849643e52 Got rid of HAS_TAIL_CALL slice 2013-12-06 00:28:13 +04:00
Andrey Breslav 934d8ee199 Rename class 2013-12-06 00:28:13 +04:00
Andrey Breslav d5941e90eb Unused code removed 2013-12-06 00:28:13 +04:00
Andrey Breslav fe33fbe79b Properly detect changing 'this' reference in tail calls to members 2013-12-06 00:28:12 +04:00
Andrey Breslav 97319808b6 Detecting tail calls through CFA 2013-12-06 00:28:12 +04:00
Andrey Breslav 9f319e8b24 TCO: Re-use parameter values already loaded onto the stack for a recursive call 2013-12-06 00:28:12 +04:00
Andrey Breslav 2a03d40233 TCO: Optimize all function calls, not only JetCallExpressions 2013-12-06 00:28:11 +04:00
Andrey Breslav 6d369b985f Do not rely on JetCallExpressions in tail-call detection
Calls come in other forms too
2013-12-06 00:28:11 +04:00
Andrey Breslav 9ed0b009d4 No need to store a list of recursive call expressions in trace 2013-12-06 00:28:11 +04:00
Andrey Breslav 0316e6cb8d Indirect tests for tail call diagnostics removed 2013-12-06 00:28:10 +04:00
Andrey Breslav 94500bd968 Use codegen box tests for tail calls as diagnostic tests too 2013-12-06 00:28:04 +04:00
Andrey Breslav bb6ceffbbb Missing tests added 2013-12-06 00:27:31 +04:00
Andrey Breslav c70a54306f Rename directory for back-end tests 2013-12-05 23:53:08 +04:00
Andrey Breslav fe00b03279 Rename directory for diagnostic tests 2013-12-05 23:53:07 +04:00
Andrey Breslav bf8bfc63c5 Don't analyze tail calls when only declaration headers are processed
Otherwise we are getting spurious "NO_TAIL_CALLS" warnings
2013-12-05 23:53:07 +04:00
Sergey Mashkov fb0ec573e0 Tests for JVM back-end support of tail-call optimization 2013-12-05 23:53:07 +04:00
Sergey Mashkov 9da3d2f051 Support tail-call optimization in the JVM back-end 2013-12-05 23:53:06 +04:00
Sergey Mashkov cfbcbb80f5 Store methodStartLabel in MethodContext 2013-12-05 23:53:06 +04:00
Sergey Mashkov e4382ff95b Minor: better assertions and warnings removed 2013-12-05 23:53:06 +04:00
Sergey Mashkov 1c81102941 Tail-call detection support in the front-end 2013-12-05 23:53:05 +04:00