Commit Graph

16855 Commits

Author SHA1 Message Date
Nikolay Krasko bc07f6db06 Temp workaround for dependency in FileManagerImpl to Registry properties
Should be reverted after new EAP
2014-07-29 16:32:38 +04:00
Nikolay Krasko 61b70d287e Update to 138.1283.4 EAP 2014-07-29 16:28:36 +04:00
Evgeny Gerashchenko 8a84446458 Merge pull request #502 from bintree/master
#KT-5513 Fixed
2014-07-29 15:13:44 +04:00
Evgeny Gerashchenko 90b065e82b += tests fix 2014-07-29 12:06:36 +04:00
Denis Zharkov b86affaa3a Assignment operations test fix:
x is a byte, x += 2 translated to x = x+2, but type of (x+2) currently
is Int, so it's not compiled because Int can't be stored in Byte.

Maybe we need to think about what should be a result of sum of to
Bytes, but currently it's still Int
2014-07-28 22:00:15 +04:00
Denis Zharkov c4746bc90f Assignment operations test fix:
these methods used in expressions like a = a + b, so they need to return
NotNull when receiver is NotNull
2014-07-28 22:00:15 +04:00
Denis Zharkov 48ca1bd453 Assignment operations test fix:
type infered for these vals are MutableIterator, but there is no plus (returning MutableIterator)
nor plusAssign operator for them, so I casted them explicitly to Iterator
2014-07-28 22:00:15 +04:00
Denis Zharkov 76845a76b9 Fixed KT-4814: check type when a += b is a = a+b
In cases when a += b is a = a + b, check that (a+b) can be safely casted to a
2014-07-28 22:00:14 +04:00
Valentin Kipyatkov 2b67716e95 KT-5153 Smart completion should include objects from type
#KT-5153 Fixed
2014-07-28 18:52:58 +04:00
Valentin Kipyatkov be0e78b11a Fixed one more case of no-auto-insertion after "as" 2014-07-28 18:52:58 +04:00
Valentin Kipyatkov 7546a17539 KT-4914 Smart completion should work after 'as' and 'as?'
#KT-4914 Fixed
2014-07-28 18:52:58 +04:00
Valentin Kipyatkov 32dbed602a KT-4913 Smart completion should work after '!'
#KT-4913 Fixed
2014-07-28 18:52:58 +04:00
Valentin Kipyatkov 19999e6879 Smart completion for implicitly typed function body 2014-07-28 18:52:58 +04:00
Valentin Kipyatkov 91c983706a Fixed KT-5020 Smart completion should work at the initializer of a val with no explicit type
#KT-5020 Fixed
2014-07-28 18:52:58 +04:00
Valentin Kipyatkov ca25a3feaa Simplified code 2014-07-28 18:52:57 +04:00
Valentin Kipyatkov 67df7de7b1 Fixed KT-5110 Smart completion: do not generate comma if next argument has default value
Fixed KT-5109 Smart completion: do not insert comma if next argument is vararg

 #KT-5110 Fixed
 #KT-5109 Fixed
2014-07-28 18:52:57 +04:00
Valentin Kipyatkov bddb01888a Fixed KT-5158 Smart completion for when selector: do not include subject variable
#KT-5158 Fixed
2014-07-28 18:52:57 +04:00
Valentin Kipyatkov 595ef9f1d4 Fixed KT-5168 Smart completion includes null when comparing non-nullable value
#KT-5168 Fixed
2014-07-28 18:52:57 +04:00
Valentin Kipyatkov 81393c999b Fixed KT-5231 Smart completion does not insert comma in super constructor argument list
KT-5231 Fixed
2014-07-28 18:52:57 +04:00
Valentin Kipyatkov c8c8b477ef Added test for KT-5272 which is not reproduced 2014-07-28 18:52:57 +04:00
Valentin Kipyatkov d6b12187c2 Fixed KT-5341 Code completion of class declared locally inserts its "qualified name"
#KT-5341 Fixed
2014-07-28 18:52:57 +04:00
Valentin Kipyatkov 25a212e923 Converted JetClassInsertHandler to Kotlin 2014-07-28 18:52:57 +04:00
Alexey Sedunov 9cbcabffa4 Control-Flow Analysis: Reuse pseudo-value information for unused expression analysis 2014-07-28 13:07:37 +04:00
Alexey Sedunov 2a19016d58 Pseudocode: Add test for parenthesized call in selector 2014-07-28 13:07:34 +04:00
Alexey Sedunov 85bb4f9b8e Pseudocode: Generate read instructions on call expression (instead of
callee)
2014-07-28 13:07:33 +04:00
Alexey Sedunov 9f3ebe5f3b Pseudocode: Generate merge instruction regardless of number of branches 2014-07-28 13:07:32 +04:00
Alexey Sedunov d008cb8c21 Pseudocode: Do not regenerate receiver values 2014-07-28 13:07:30 +04:00
Alexey Sedunov 77bbf8f73b Pseudocode: Generate fake values for Unit/Nothing-typed expressions 2014-07-28 13:07:29 +04:00
Alexey Sedunov 2d3ac9109b Pseudocode: Generate synthetic VALUE_CONSUMER for both property and class delegates 2014-07-28 13:06:46 +04:00
Alexey Sedunov d07deeb5fb Pseudocode: Generate UNSUPPORTED_ELEMENT for misplaced returns 2014-07-28 13:04:02 +04:00
Alexey Sedunov b0bf11c51e Pseudocode: Consume value of true condition in while-loop 2014-07-28 13:04:01 +04:00
Alexey Sedunov e11ffb8542 Pseudocode: Replace UnsupportedElementInstruction with UNSUPPORTED_ELEMENT magic.
Generate UNSUPPORTED_ELEMENT for assignments with unresolved left-han side
2014-07-28 13:04:00 +04:00
Alexey Sedunov c32d112e67 Pseudocode: Generate magics for cast expressions 2014-07-28 13:03:12 +04:00
Alexey Sedunov 00dd1dbb0b Control-Flow Analysis: Compute STATEMENT slice using control-flow information 2014-07-28 13:03:10 +04:00
Alexey Sedunov ffd4af872c Pseudocode: Track merged values. Compute closure of value usages over merge instructions. Exclude merge instructions from usage lists 2014-07-28 13:03:09 +04:00
Alexey Sedunov 267ea81bbe Pseudocode: Avoid null input values 2014-07-28 13:03:07 +04:00
Alexey Sedunov 8083ffad47 Pseudocode: Add mapping from pseudo-values to PSI elements 2014-07-28 13:03:06 +04:00
Alexey Sedunov 4f54d833d3 Pseudocode: Generate instructions for callable reference expressions 2014-07-28 13:03:05 +04:00
Alexander Udalov fd27518070 Fix build tool plugins after recent changes to CLI 2014-07-26 02:28:51 +04:00
Alexander Udalov 8ed2413395 Minor, use javaClass instead of getClass()
Fix Maven build
2014-07-26 01:34:42 +04:00
Alexander Udalov c24c799819 Fix NoSuchMethodError on private components of data classes
A follow-up to
https://github.com/JetBrains/kotlin/commit/d5681540ec47ee5c9a548ba56df8b4e20097549d
2014-07-26 01:31:11 +04:00
Alexander Udalov c69303fd1d Fix lots of deprecation warnings on ASM code
In the vast majority of cases it's known that we're calling a class method and
not an interface method
2014-07-26 01:05:03 +04:00
Alexander Udalov 99025de748 Drop "-jar" and "-output" kotlinc-jvm CLI arguments
In favor of a brand new "-d" option
2014-07-26 00:32:28 +04:00
Alexander Udalov 9908d797e0 Minor, fix LoadBuiltinsTest test data 2014-07-26 00:27:31 +04:00
Alexander Udalov 6755e7ec2e Drop hack for OBJECT$/INSTANCE$ migration 2014-07-26 00:22:38 +04:00
Alexander Udalov de0f751207 Replace object$ -> OBJECT$, instance$ -> INSTANCE$ in the project 2014-07-26 00:21:05 +04:00
Alexander Udalov 549a38ca6f Minor, widen the scope for INSTANCE$/OBJECT$ replacement 2014-07-25 21:53:03 +04:00
Alexander Udalov 133b2918e1 Drop a hack which allowed to make Unit an object 2014-07-25 21:45:15 +04:00
Alexander Udalov 93fa7cb330 Increase ABI version
Related changes include:
- kotlin.Unit is now a named object
- "instance$" was renamed to "INSTANCE$"
- "object$" was renamed to "OBJECT$"
- Intrinsics#stupidSync() was dropped
2014-07-25 21:34:12 +04:00
Alexander Udalov 98ffdb3e32 Minor, delete Object from some test data 2014-07-25 21:19:39 +04:00