Commit Graph

142 Commits

Author SHA1 Message Date
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
Stepan Koltsov 3623c7fc59 OverrideFunctionWithParamDefaultValue test in JetDiagnosticsTest 2012-02-04 11:59:54 +04:00
svtk 0632f90c53 KT-1193 Check enum entry supertype 2012-02-03 20:35:29 +04:00
Andrey Breslav 649a639bba Test for
KT-274  Add Enumeration.iterator () method in global namespace
2012-02-03 15:04:14 +04:00
Andrey Breslav abd0932dfe Test for
KT-274  Add Enumeration.iterator () method in global namespace
2012-02-03 15:00:55 +04:00
svtk 75f1f06862 test for KT-1028 2012-02-03 13:14:50 +04:00
svtk 34ee879094 KT-1189 StackOverflow in ide 2012-02-03 13:14:28 +04:00
svtk 6251b413a2 New check rules for inc, plus & plusAssign
KT-1176 arrayList[0]++. Setter is stored for array access expression when it's needed
2012-02-03 12:10:12 +04:00
svtk 1cb4c89c5c Mark only brackets when array access expression is unresolved 2012-02-03 12:10:12 +04:00
Stepan Koltsov c88940c07c split diagnostics/alt-headers test 2012-01-31 22:22:39 +04:00
Andrey Breslav 6f97101810 A new test for alt-headers 2012-01-31 11:41:41 +04:00
Andrey Breslav b257ad4fa0 Temporarily revert to debug the tests 2012-01-30 22:25:08 +04:00
Andrey Breslav 7a7db291cc Test fixed (nullability) 2012-01-30 22:12:03 +04:00