Commit Graph

154 Commits

Author SHA1 Message Date
Svetlana Isakova a91a53f7f1 KT-1531 Frontend should prohibit secondary constructors
# KT-1531 Fixed
2012-03-27 17:48:04 +04:00
Svetlana Isakova 7a782d4529 # KT-1571 Fixed. Frontend fails to check val reassigment for operator overloading. 2012-03-27 16:40:10 +04:00
Svetlana Isakova 48250050f8 test for KT-1580 2012-03-27 16:38:30 +04:00
Svetlana Isakova bd5b84e697 # KT-1642 Fixed kotlin subpackages hide Java's toplevel packages 2012-03-27 16:20:59 +04:00
Svetlana Isakova f7cfb36f62 # KT-1579 Fixed Can't import nested class/trait 2012-03-27 16:20:59 +04:00
Andrey Breslav 669126d635 Making compiler exit codes type safe. Fixes the problem with wrong command-line argument usage being missed by the IDE 2012-03-27 12:19:01 +04:00
Andrey Breslav dd9c36387c KT-987 Unboxing nulls
#KT-987 Fixed
2012-03-26 11:42:34 +04:00
Stepan Koltsov 8ad5db5bd9 Fix KT-1639: extend JFrame
#KT-1639 Fixed
2012-03-24 20:36:43 +04:00
Andrey Breslav cf108765ae KT-729 Need to support arrays as varargs: front-end checks done
#KT-729 In progress
2012-03-23 22:47:44 +01:00
Andrey Breslav 4cef4ec170 Fixed type checking in the case of
val s : String = !true
2012-03-23 10:44:52 +01:00
Andrey Breslav 7341a82b0b Support for !! (analog of sure()/npe()) 2012-03-23 10:44:51 +01:00
Stepan Koltsov e2cb98df67 better import jet namespace 2012-03-19 23:25:27 +04:00
Svetlana Isakova 114988ac82 KT-1579 "Can't import nested class/trait" partially: Entry can be imported, but Map.Entry in code is still unresolved 2012-03-16 17:09:28 +04:00
Svetlana Isakova 9dc9e9984b KT-1572 Frontend doesn't mark all vars included in closure as refs. 2012-03-14 15:07:33 +04:00
pTalanov f326359bfe KT-1550 Cannot use parenthesized array access expression. 2012-03-14 13:19:02 +04:00
Andrey Breslav 8019357bd5 KT-555 Parse error for generic function invocation
#KT-555 Fixed
2012-03-14 12:51:39 +04:00
Stepan Koltsov 3748507ac1 disable +JDK macro in JetDiagnosticsTest and fix (actually hide) revealed bugs
+JDK was not very helpful
2012-03-12 22:54:24 +04:00
Stepan Koltsov 07ff53d456 add trailing newlines to test files
otherwise I have to rollback dozens of files after using sed that follows conventions
2012-03-12 22:54:14 +04:00
Stepan Koltsov 8be79b3f22 split some tests in JetDiagnosticsTest 2012-03-12 22:53:50 +04:00
Andrey Breslav c315734665 EA-34240 - SIOOBE: CompileTimeConstantResolver.getCharValue 2012-03-12 16:58:01 +04:00
Svetlana Isakova c857785910 KT-1002 If there's no return in function highlight only last token but not last statement 2012-03-09 12:20:10 +04:00
Svetlana Isakova e9a7a909f6 KT-1402 Create new Kotlin object from a Java public static inner class 2012-03-07 12:09:03 +04:00
Svetlana Isakova b6161cb41b Bug with wrong 'anonymous initializer without constructor' fixed 2012-03-05 17:05:36 +04:00
James Strachan eb3aac9acb refactored std.* package to be kotlin.*. Due to KT-1381 I had to move the functions from kotlin.test into the stdlib for now (I made them not depend on JUnit for now) 2012-03-03 12:11:06 +00:00
Stepan Koltsov cac3311f1a fix JetDiagnosticsTest j+k 2012-03-01 05:32:03 +04:00
Stepan Koltsov 92c69b6826 JetDiagnosticsTest: java+kotlin 2012-02-29 22:33:53 +04:00
Svetlana Isakova 631961e761 Diagnostics & diagnostic factories refactoring 2012-02-27 21:39:26 +04:00
Andrey Breslav 963557f3c8 KT-1457 Subtyping doesn't work when type parameter is used indirectly in supertype declaration 2012-02-27 15:34:57 +04:00
Andrey Breslav cefd9d5ca2 KT-627 Drop Predicate expression 2012-02-27 12:58:23 +04:00
Andrey Breslav f049d27fa3 KT-1385 support multi line strings with templates 2012-02-24 14:25:31 +04:00
Svetlana Isakova cc244fad94 KT-1191 Wrong detection of unused parameters
KT-1219 Incorrect 'unused value' error in closures
2012-02-24 12:09:02 +04:00
Alex Tkachman 53bba59a4f dbl -> toDouble 2012-02-22 13:14:41 +02:00
Andrey Breslav b46e20c5c3 KT-1138 Need better diagnostic for case when method/constructor call is followed by class initializer or simple block 2012-02-22 11:51:37 +04:00
Alex Tkachman 181f4d444d fix for broken test 2012-02-21 15:45:43 +02:00
Andrey Breslav bff62484b1 KT-1306123.lng or 123.sht is not good name 2012-02-20 21:42:13 +04:00
Svetlana Isakova b35d340056 KT-1270 Poor highlighting when trying to dereference a nullable reference 2012-02-20 20:12:57 +04:00
Svetlana Isakova 05dfdc7377 KT-1293 Kompiler doesn't show error when element of Array<Int?> is assigned to Int 2012-02-20 17:31:08 +04:00
Svetlana Isakova 046c13a264 KT-1041 Add check that thrown/catched expression is of Throwable type 2012-02-20 14:03:39 +04:00
Stepan Koltsov ea8eb7412a kill redeclaration handler in ClassDescriptor 2012-02-19 22:02:37 +04:00
Stepan Koltsov ca8cf6cb49 missing error report on incompatible declaration
===
open class Aaaa() {
    fun bb() = 1
}

class Bbbb() : Aaaa() {
    fun <T> bb() = 1
}
===
2012-02-19 22:02:33 +04:00
Stepan Koltsov 842a70ca66 report conflicting overloads in functions with same parameters different type parameters
test case:

===
class Aaa() {
    fun f() = 1
    fun <P> f() = 1
}
===
2012-02-18 00:33:37 +04:00
Stepan Koltsov 3b56b90a7c split ConflictingOverloads.jet test, add property overload conflict test 2012-02-18 00:33:26 +04:00
Stepan Koltsov e3fdc5d595 fix a case of fake override of abstract and non-abstract function
===
open class Ccc() {
    fun foo() = 1
}

trait Ttt {
    fun foo(): Int
}

class Zzz() : Ccc(), Ttt // there must not be an error here
===

Reported by Andrey Breslav as a bug of Comparator implementation:

===
fun comparator<T>(f: (T, T) -> Int): Comparator<T> = object : Comparator<T>, Object() {
    override fun compare(o1: T, o2: T): Int = f(o1, o2)
}
===
2012-02-13 23:34:01 +04:00
Stepan Koltsov 4b94eb5e2b rewrite owner when copying FunctionDescriptor from supertype scope
that fixes invocation:

>>> StringBuilder.length()

that was compiled to

>>> invokevirtual CharSequence.length()

and now compiles to

>>> invokevirtual StringBuilder.length()

Essentially patch rewrites FunctionDescriptor.containingDeclaration
when FunctionDescriptor is copied to subclass scope.

FunctionDescriptor now has kind field that can be
* DECLARATION (for "real" function, maybe abstract)
* DELEGATION
* FAKE_OVERRIDE (created for functions from supertypes)

All tests pass although some parts of code are buggy and ugly.

Random comments about this patch:

* FunctionDescriptor.overrides point to function descriptors of supertype scopes

* Filling of memberScope with supertypes is moved to OverrideResolver

* ExpressionCodegen.intermediateValueForProperty must be rewritten

* Patch adds not nice REDECLARATION reports (see compiler/testData/diagnostics/tests/*).
  Will be fixed later.
2012-02-10 20:36:40 +04:00
Evgeny Gerashchenko b6fe7fe85f Added compiler diagnostic for unresolved IDE templates. 2012-02-10 12:38:46 +04:00
Stepan Koltsov 6a8f2e14fb another case in JetDiagnosticsTest
simple unclassified case not covered by other tests
2012-02-09 22:25:11 +04:00
Stepan Koltsov bb0cf4f92f JetDiagnosticsTest: diamond with generics 2012-02-09 19:04:17 +04:00
svtk 255e37efb9 KT-799 Allow 'return' expressions in conditionals assigned to variables 2012-02-09 12:58:17 +04:00
Stepan Koltsov 0c821f947d split diagnostics/Override.jet test 2012-02-08 00:55:43 +04:00
Stepan Koltsov 9015ce29c2 diamond inheritance in JetDiagnosticsTest 2012-02-04 11:59:57 +04:00