Commit Graph

2387 Commits

Author SHA1 Message Date
Svetlana Isakova 1fc4573a8c removed duplication of pseudocode in tests
for local functions
2014-03-07 21:08:15 +04:00
Svetlana Isakova ec47821567 restructured control flow tests 2014-03-07 21:08:14 +04:00
Andrey Breslav 2a0ccb95b1 Support quotes at the end of a raw string
Fix for KT-4650 Can't use double quote at the end of the raw string

#KT-4650 Fixed
2014-03-07 19:38:58 +04:00
Mikhael Bogdanov e54ece8d12 Field access chain update on lambda regeneration 2014-03-07 16:12:10 +04:00
Alexey Sedunov d2f6b55cb5 Box qualified names of package directives into dot-qualified expressions 2014-03-04 19:45:30 +04:00
Mikhael Bogdanov 16fbe1d5dd Abi version increased: inline calls in runtime (otherwise client inlining wouldn't work) 2014-03-03 15:52:25 +04:00
Mikhael Bogdanov ee136d6594 Default inline flag = true 2014-03-03 15:43:45 +04:00
Mikhael Bogdanov 4f5b20a8db Test framework for inline 2014-03-03 15:43:35 +04:00
Alexander Udalov 6eae950812 Increase ABI version after renaming "jet"->"kotlin" 2014-03-02 19:55:29 +04:00
Alexander Udalov 6e23af2ba3 Split Library.kt into several files
For better readbility and discoverability. Also rename String.compareTo
parameter to "other", since that is the name of parameter of other compareTo's
2014-03-02 19:55:27 +04:00
Alexander Udalov f7b6457139 Replace "jet" package name with "kotlin" in testData 2014-03-02 19:55:26 +04:00
Alexander Udalov f2b4c7fa3e Fix LoadBuiltinsTest after renaming "jet" to "kotlin" 2014-03-02 19:55:25 +04:00
Alexander Udalov b3a9721571 Store receiver parameter in JVM intrinsics map
To differentiate between "String?.plus" extension in builtins and
"Iterable<*>.plus" extension in stdlib (they have the same owner, name and
value parameter count)
2014-03-02 19:55:25 +04:00
Alexander Udalov 11cc7f46f4 Remove "Iterator.iterator()" intrinsic, add stdlib function 2014-03-02 19:55:24 +04:00
Alexander Udalov 6b0fce8cd5 Unsorted replacements "jet" -> "kotlin"
#KT-2896 Fixed
2014-03-02 19:55:15 +04:00
Alexander Udalov 0da92e22a2 Move jet.JetObject -> kotlin.jvm.internal.KObject
Don't use JetObject as a marker class in KotlinRuntimeLibraryUtil anymore,
since there are other classes for this purpose (KotlinPackage, Unit)
2014-03-02 19:54:58 +04:00
Alexander Udalov 5d6d4406cb Move FunctionImpl classes from package "jet" to "kotlin" 2014-03-02 19:54:56 +04:00
Alexander Udalov b68e47f705 Move JVM-specific annotations out of built-ins
Move 'volatile' and 'synchronized' to package 'kotlin' in stdlib. Also delete
'atomic', since its support was never implemented
2014-03-02 19:54:55 +04:00
Alexander Udalov 774e5f0535 Sort out JVM intrinsics for equals, hashCode, toString 2014-03-02 19:54:55 +04:00
Alexander Udalov 3dcd85bdb4 Add toString() to Any, fix all tests
#KT-4517 Fixed
2014-03-02 19:54:49 +04:00
Alexander Udalov ec30d52978 Delete Hashable, pull up its members to Any
Extensions on nullable types remain in Library.kt

 #KT-1741 Obsolete
 #KT-2805 Obsolete
 #KT-1365 Fixed
 #KT-4517 In Progress
2014-03-02 19:54:08 +04:00
Alexander Udalov 9537b68724 Load 'equals' parameter from Java code with the name 'other'
This fixes a lot of warnings on mixed Kotlin+Java code about different names
for the same parameter because we always loaded 'equals' parameter with the
name 'p0', whereas in Kotlin we usually name it 'other'
2014-02-28 21:48:29 +04:00
Ilya Klyuchnikov 68da8bcf6b test fix 2014-02-28 16:24:19 +04:00
Alexander Udalov 8425f2e668 Copy type parameters for JVM function accessors
Otherwise generic signature wasn't correctly written to accessors, resulting in
classfiles not being valid and javac failing to compile Java sources against
them
2014-02-26 21:22:57 +04:00
Andrey Breslav fbdba0f48d Test data fixed 2014-02-26 20:48:45 +04:00
Andrey Breslav a7135fee06 Report CLASS_OBJECT_NOT_ALLOWED for local classes 2014-02-26 19:42:05 +04:00
Tuomas Tynkkynen 3e451c5811 Disallow break or continue across a function boundary
Code containing breaks or continues that attempt to jump across a
function boundary weren't detected during analysis but would crash
the compiler during code generation. Add diagnostics for these kinds
of errors.

Example:

fun f() {
    while (true) {
        fun inner() {
            continue
        }
    }
}

 #KT-4334 Fixed
2014-02-26 00:14:42 +02:00
Alexander Udalov 4968afebf8 Don't generate bodies of built-in stub methods into interfaces 2014-02-24 21:44:42 +04:00
Alexander Udalov 4a603f1268 Minor, specify types for clarity 2014-02-21 20:38:02 +04:00
Alexander Udalov eb7b757e38 Fix VerifyError on rangeTo on primitive types 2014-02-19 17:46:18 +04:00
Alexander Udalov 8c97d9ebb3 Fix rangeTo between Float and Long
Float.rangeTo(Long) and Long.rangeTo(Float) now both return FloatRange for
consistency with other binary operations between floats and longs which, in
turn, return float to be consistent with Java
2014-02-19 17:46:18 +04:00
Alexander Udalov 3e33473c1a Don't check equals, hashCode, toString in LoadBuiltinsTest
Otherwise there'll be too many fake overrides when these methods will appear in
Any
2014-02-19 17:44:19 +04:00
Andrey Breslav ac94dc5411 Interface ClassDescriptorWithResolutionScopes extracted for both lazy and mutable classes 2014-02-18 19:51:49 +04:00
Natalia Ukhorskaya 9f3b73986a Update to IDEA 13.1 (134.1007) 2014-02-17 10:45:48 +04:00
Alexander Udalov 8b918ef1aa Add regression tests for obsolete issues
#KT-1291 Obsolete
 #KT-2895 Obsolete
 #KT-3060 Obsolete
 #KT-3298 Obsolete
 #KT-3613 Obsolete
 #KT-3862 Obsolete
2014-02-13 04:43:53 +04:00
Alexander Udalov a98434263b Add regression test for outdated issue
#KT-3738 Obsolete
2014-02-12 19:17:55 +04:00
Alexander Udalov 35c7c4afd8 Fix capturing outer this in some cases in JVM codegen
When property initializer of some inner entity (e.g. anonymous object) contains
a reference to some outer entity (say, a property of the outer class), we need
to make sure we called "lookupInContext" on this entity's owner class, so that
"setCaptureThis" was called on the appropriate closure

 #KT-4176 Fixed
2014-02-12 19:17:55 +04:00
Svetlana Isakova 70374ea9be KT-4529 Lambdas are analyzed improperly in an infix call nested inside a println
#KT-4529 Fixed
2014-02-12 14:47:10 +04:00
Svetlana Isakova 2ebe8fd6a2 improvements after review in constraint system tests 2014-02-12 12:48:15 +04:00
Svetlana Isakova 9832676701 generate constraint system tests
more tests added
2014-02-12 12:48:13 +04:00
Svetlana Isakova 791fa22abb KT-4405 Control-flow analysis is not performed for some local declarations #KT-4405 Fixed 2014-02-12 12:48:13 +04:00
Svetlana Isakova aa713ef1f6 generate pseudocode for property accessor only if the property is local
otherwise check it independently like a function
2014-02-12 12:48:12 +04:00
Svetlana Isakova 1c4db84d92 do not try properties named 'invoke' when resolve 'invoke' 2014-02-12 12:48:12 +04:00
Svetlana Isakova b51e3dc464 added ConstraintSystemTest 2014-02-12 12:48:11 +04:00
Svetlana Isakova 9d493b6f7b generate CHECK_CAST for smartcasted 'this' 2014-02-12 12:48:11 +04:00
Svetlana Isakova 9ed57a5767 removed AutoCastReceiver
check subtype for receiver by AutoCastUtils.isSubTypeByAutoCast directly
 #KT-4403 Fixed
 #KT-4415 Fixed
2014-02-12 12:48:10 +04:00
Svetlana Isakova 5ef320173c generate pseudocode for functions in local classes
#KT-4405 In progress
 #KT-3501 Fixed
2014-02-11 21:07:10 +04:00
Svetlana Isakova f74fbf9f8b added readme file about diagnostic tests directives 2014-02-11 21:07:09 +04:00
Svetlana Isakova 8868da8c5f KT-4372 Invalid error position and failing to resolve invoke with receiver from other module #KT-4372 Fixed 2014-02-11 21:07:09 +04:00
Svetlana Isakova 45abab2a2c KT-4341 No resolved call for right-hand side of equals expression
#KT-4341 Fixed
2014-02-11 21:07:08 +04:00