Commit Graph

1231 Commits

Author SHA1 Message Date
Nikolay Krasko e4cefd000a KT-1229 Packages should be showed in package derictive 2012-02-16 15:35:54 +04:00
Stepan Koltsov 356ad9bd0b fix Read*BinaryClassTest test on windows 2012-02-15 17:11:03 +04:00
Stepan Koltsov cf7be620a7 Read*BinaryClassTest: compare serialized namespace with hardcopy 2012-02-15 16:15:31 +04:00
Alefas 94402c5f3f Name validator for introduce variable action. 2012-02-15 15:51:23 +04:00
Stepan Koltsov cbdeb23935 cleanup in JavaDescriptorResolver 2012-02-15 00:34:28 +04:00
Stepan Koltsov 274406b72b cleanup in JavaDescriptorResolver 2012-02-15 00:22:02 +04:00
Stepan Koltsov 81cf9b36ff cleanup in JavaDescriptorResovler 2012-02-15 00:13:33 +04:00
Stepan Koltsov b67bb356bd fix inner classes in JavaDescriptorResolver, kill type variable by psi resolver 2012-02-15 00:02:06 +04:00
Stepan Koltsov 9248cf9659 Important JavaDescriptorResolver refactoring
This patch implement own member filling with supertype scope. Before this patch JDR relied on
Idea hierarchy resolver.

This patch does two things:

* copies FunctionDescriptors from supertype scopes
* rewrites containingDeclaration similary to how it is done in previous patch

Patch is incomplete, in particular properties are not yet initialized properly, code needs cleanup,
however the most important part of refactoring is done, and tests pass.
2012-02-15 00:02:03 +04:00
Stepan Koltsov 0f52f2a5f8 fail early on syntax errors in ReadJavaBinaryClassTest 2012-02-14 23:40:21 +04:00
Stepan Koltsov 9a41ab3dd6 properly create JavaNamespaceDescriptor for java.lang 2012-02-14 23:40:03 +04:00
Stepan Koltsov 5979cd774c minor diag in JavaDescriptorResolver 2012-02-14 23:39:31 +04:00
Alefas 39d442b04f Declare Variable, Add type annotation action for Introduce Variable feature. 2012-02-14 21:32:13 +04:00
Maxim Shafirov a03922d467 Copyrights set to Apache, reflecting it's now open source 2012-02-14 19:25:06 +04:00
Stepan Koltsov 1d2e02afb4 use MutableClassDescriptorLite instead of MutableClassDescriptor
where MutableClassDescriptor is not necessary
2012-02-14 17:34:29 +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 7fb880e585 fix constructor signature write fix after ace34b01bc 2012-02-13 21:30:14 +04:00
Evgeny Gerashchenko b1db3aa8a5 Added CompileEnvironment.dispose() in KotlinCompiler to restore original Application after compilation. 2012-02-13 20:28:03 +04:00
Nikolay Krasko be5eeb2546 KT-985 Don't show the default package in the completion list 2012-02-13 20:03:29 +04:00
Evgeny Gerashchenko 8b9403ac0f Reverted my commits to restore build. 2012-02-13 19:53:03 +04:00
Evgeny Gerashchenko 30fc19ad82 ForTestCompileStdlib now is invoked in separate process to avoid substituting JarFileSystem and other global components with other incompatible components. 2012-02-13 18:38:41 +04:00
Alex Tkachman 845e873296 KT-1159 test for obsolete issue 2012-02-13 09:54:12 +02:00
Alex Tkachman ace34b01bc KT-1202 object construction fix 2012-02-13 08:34:10 +02:00
Alex Tkachman 84ed18c7e2 KT-1149 static type info field for unarameterized traits 2012-02-12 09:04:18 +02:00
Alex Tkachman 9f4ef7fb6a KT-1186 test added 2012-02-11 13:04:26 +02:00
Alex Tkachman a2b602a440 KT-694 - support for simple enums 2012-02-11 13:00:28 +02:00
Alex Tkachman d81ca43b6e KT-1047 - obsolete. test added 2012-02-11 11:48:50 +02:00
Alex Tkachman 8d9434548f KT-1199 - test and fix for erased case 2012-02-11 11:09:02 +02:00
Stepan Koltsov 4ec59edb9e rename NamedFunctionDescriptorErrorImpl -> ErrorNamedFunctionDescriptorImpl 2012-02-10 20:40:47 +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
Nikolay Krasko 21394c8486 - KT-1232 Do not place import with default imports in scope after completion
- Don't activate not-in-scope completion on typing by default
2012-02-10 16:27:05 +04:00
Nikolay Krasko f1a2866f0c KT-1223 Code completion for imported from jars extension functions - don't mute ProcessCanceledException in hack 2012-02-10 14:10:52 +04:00
Evgeny Gerashchenko b6fe7fe85f Added compiler diagnostic for unresolved IDE templates. 2012-02-10 12:38:46 +04:00
Stepan Koltsov 9b6e051dc1 split SuperGenTest.enclosed 2012-02-09 23:40:51 +04:00
Alex Tkachman 8e6e8e938c def args in constructors 2012-02-09 20:36:09 +02:00
Stepan Koltsov 5c8fb3febf split FunctionGenTest.defaultArgs 2012-02-09 22:25:19 +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
Evgeny Gerashchenko 47764add22 Changed completion for 'iter' live template, now check is the same as used in checking real for loops. 2012-02-09 21:56:28 +04:00
Evgeny Gerashchenko 447114f063 Added utility method to check if variable is iterable. 2012-02-09 21:56:28 +04:00
Nikolay Krasko 3c1758c041 Very temp commit for getting top level function descriptions from java package 2012-02-09 21:05:03 +04:00
Stepan Koltsov bb0cf4f92f JetDiagnosticsTest: diamond with generics 2012-02-09 19:04:17 +04:00
Stepan Koltsov 7ad452109f split SuperGenTest.basicmethod 2012-02-09 18:39:10 +04:00
Maxim Shafirov 8cfc443c93 KT-1220 2012-02-09 18:37:15 +04:00
Stepan Koltsov 30a74d77b5 specify return type of Tuple* property getters 2012-02-09 17:39:23 +04:00
Stepan Koltsov 02eb0201ea do not compile stdlib more then once for tests
if stdlib compilation fails then next test starts compilation again,
so all tests execute too long
2012-02-09 17:12:35 +04:00
Stepan Koltsov d69739a3d2 temp hack against KT-1214 2012-02-09 16:34:30 +04:00
Stepan Koltsov df3abbfbb6 diagnostics in CompileEnvironment 2012-02-09 16:34:26 +04:00
Andrey Breslav b7f5490b4c Fix value parameter indeices for function literals with receivers 2012-02-09 16:00:44 +04:00
svtk 255e37efb9 KT-799 Allow 'return' expressions in conditionals assigned to variables 2012-02-09 12:58:17 +04:00
Evgeny Gerashchenko cf5f419549 Added parser test for ide templates. 2012-02-08 21:12:42 +04:00