Commit Graph

7292 Commits

Author SHA1 Message Date
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
Svetlana Isakova aca21f78d5 check incomplete equality 2014-02-11 21:07:08 +04:00
Pavel V. Talanov 80183c88cf Do not normalize visibilities for fake overrides
#KT-4525 Fixed
2014-02-11 20:13:11 +04:00
Pavel V. Talanov e3ae7afac3 Add validation for binding between java classes and corresponding package fragments 2014-02-11 17:17:06 +04:00
Pavel V. Talanov e4a0221abc Remove PackageFragmentDescriptor#getProvider method
PackageFragmentProvider should be hidden from the client of PackageFramentDescriptor
2014-02-11 17:17:05 +04:00
Pavel V. Talanov cd6a71ef81 Refactor JDR: add explicit binding between java classes and packages for their statics
Get rid of Kind in JavaPackageFragmentDescriptor and create subclass which exposes additional function
Add method in JavaClassDescriptor to get correponding package fragment
Remove JavaDescriptorResolver from context
2014-02-11 17:17:04 +04:00
Pavel V. Talanov 2fe2a50b14 Refactor JDR: use JavaResolverCache in LazyJavaPackageFragmentProvider directly
Remove LazyJavaClassResolverWithCache
This actually can affect behaviour because JavaResolverCache has slightly different logic (uses CLASS key in BindingContext as opposed to FQNAME_TO_CLASS_DESCRIPTOR)
2014-02-11 17:17:01 +04:00
Pavel V. Talanov 18d088cb71 Refactor JDR: create LazyJavaPackageFragmentProvider in injector 2014-02-11 17:17:00 +04:00
Tuomas Tynkkynen 9ce40cd17b Fix unnecessary parenthesis around 'this' in refactorings
Operator priority calculation for 'this' expressions was incorrect in
JetPsiUtil.getPriority(): it would return a very low value for
a JetThisExpression, causing the IDE to report that parenthesis
are necessary in an expression like '(this)[1]'.

Fix this by making JetThisExpression not implement
JetStatementExpression by removing the implements clause from
JetLabelQualifiedInstanceExpression and adding it to all other
subclasses of JetLabelQualifiedInstanceExpression.

Fixes KT-4513.
2014-02-09 17:22:27 +04:00
Tuomas Tynkkynen 7429cc8819 Make JetTestUtils.getLastCommentInFile() to allow trailing newline
Many editors add a trailing newline when saving. Allow them in
getLastCommentInFile.
2014-02-09 17:22:10 +04:00
Tuomas Tynkkynen 420a08167b Extract JetTestUtils.getLastCommentInFile()
JetNameSuggesterTest contains useful code for getting the last comment
of a file. Extract it to JetTestUtils.getLastCommentInFile() so other
tests can use it as well.
2014-02-09 17:22:07 +04:00
Alexander Udalov cb2733a0ae Fix built-ins serializer to work with any packages
Make it serialize data for all packages found in sources and not only
KotlinBuiltIns.FQ_NAME, i.e. "jet". This is required to migrate built-ins from
package "jet" to "kotlin"
2014-02-09 04:17:35 +04:00
Andrey Breslav 9229062926 Do not annotate bare type parameters as @Nullable
This is to account for the case of, say

     class Function<R> { fun invoke(): R }

it would be a shame to put @Nullable on the return type of the function, and force all callers to check for null,
so we put no annotations
2014-02-07 16:41:12 -08:00
Mikhael Bogdanov e0ca1abe4b KT-3706 Inconsistent stack height in try catch finally in function
KT-4134 Incorrect bytecode is generated for

 #KT-3706 Fixed
 #KT-4134 Fixed
2014-02-07 13:45:22 +04:00
Nikolay Krasko 7b07b748cb Refactoring: remove unused method 2014-02-06 15:52:04 +04:00
Erokhin Stanislav a500925945 Add notNull annotations to VariableAsFunctionResolvedCall 2014-02-06 14:01:09 +04:00
Evgeny Gerashchenko ce7e0a7457 Fixed problem with overriding method with non-trivial raw type (when erased type parameter has upper bound)
Also added cases for the code which was changed.
2014-02-06 13:52:59 +04:00
Andrey Breslav 8dc9aecbf8 DescriptorSearchRule removed 2014-02-05 18:12:01 +04:00
Andrey Breslav aa0dde3a78 Old implementation of JavaDescriptorResolver deleted 2014-02-05 18:12:01 +04:00
Andrey Breslav 9f918d48b5 JavaDescriptorResolver always uses lazy mode 2014-02-05 18:12:01 +04:00
Andrey Breslav 3d1f2c25e2 resolveCompileTimeConstantValue() rewritten to Kotlin 2014-02-05 18:07:35 +04:00
Andrey Breslav 6aca05023a OBJECT_FQ_NAME moved to DescriptorResolverUtils 2014-02-05 18:07:35 +04:00
Andrey Breslav ab3b8d63df ExternalAnnotationResolver is enough to look for external annotations 2014-02-05 18:07:35 +04:00
Pavel V. Talanov f06cef684e Refactor: introduce JetReference, rename: JetPsiReference -> AbstractJetReference
Add resolveToDescriptors() to JetReference trait
Rewrite JetPsiReference to kotlin
2014-02-04 17:09:43 +04:00
Pavel V. Talanov 8e19ba9851 Fix JetSimpleNameExpression#getReceiver
Correct behaviour for unary, binary expressions and type references
Add instanceof checks in TipsManager so it's clear it only takes care of certain types of JetSimpleNameExpression
2014-02-04 17:09:41 +04:00
Andrey Breslav 30f49f3c9a Invalidate per-file cache on exceptions 2014-02-04 15:24:27 +04:00
Andrey Breslav e60bd514fa StorageManager&ExceptionTracker delivered where needed
- GlobalContext introduced to group the two
- Caches track exceptions
2014-02-04 15:24:27 +04:00
Andrey Breslav 364182e3f0 Unneeded public parameters made private 2014-02-04 15:23:15 +04:00
Andrey Breslav a90dbc48ef Information about LockBasedStorageManager instances added to assertions 2014-02-04 15:23:14 +04:00
Alexey Sedunov 7c1e28a748 Override/Implement methods: Use lazy analysis 2014-02-04 14:42:31 +04:00
Nikolay Krasko f526129ca4 Refactoring: use injector for creating lazy resolve session 2014-02-04 12:31:38 +04:00
Nikolay Krasko b8ddb658fb Refactoring: hide fact of using injector inside lazy resolve session 2014-02-04 12:31:38 +04:00
Nikolay Krasko 36d5e580b4 Refactoring: remove unnecessary constructors (prepare for injectors) 2014-02-04 12:31:37 +04:00
Nikolay Krasko 9aac846798 Refactoring: remove unused jvmInternalName from KotlinPackageLightClassData 2014-02-04 12:31:37 +04:00
Nikolay Krasko 45be6b081d Minor: add public modifier 2014-02-04 12:31:36 +04:00
Evgeny Gerashchenko 284124569d Fixed super signature generation when JetObject is explicit.
#KT-4485 fixed
2014-02-03 17:53:07 +04:00
Alexander Udalov 640dac834f Suppress "nothing to override" on equals, hashCode, toString
This is needed to smoothly make equals, hashCode and toString members of Any
instead of being extensions, as they are now: according to our bootstrapping
process, the same compiler code will be built twice, by old compiler (with
extensions) and by new compiler (with members). In the resulting code
'override' should be on all these members in all classes, so the old compiler
should be able to compile such code
2014-02-03 16:26:17 +04:00
Natalia Ukhorskaya 420349bb95 Refactoring in CompileTimeChecker 2014-02-03 13:53:46 +04:00
Alexey Sedunov 7f74ea5081 Translate KotlinSafeDeleteProcessor to Kotlin 2014-02-03 13:47:02 +04:00
Alexey Sedunov f80fa8515a Implement parameterIndex() function 2014-02-03 13:47:02 +04:00
Alexey Sedunov a6697a52ef Support getOrigin() for class constructor parameters 2014-02-03 13:47:00 +04:00
Alexey Sedunov 374682e404 Extract utility methods from KotlinSafeDeleteProcessor 2014-02-03 13:46:59 +04:00
Zalim Bashorov 8a1ffeea70 JS backend: consider functions which renamed by annotations in simple mangling. 2014-02-03 13:31:24 +04:00
Daniil c60523c0c6 A small confusing typo
Here was an out-of-date error message. It could confuse developers about the function literal syntax.

"To specify it explicitly use the {(p : Type) => ...} notation"
2014-02-02 17:25:10 +03:00
Alexander Udalov 1107ae9a11 Revert hack for annotations on built-ins
This reverts commit 5cae5c0338
2014-01-31 16:46:18 +04:00
Alexander Udalov 320a583de8 Check that lazy resolve works correctly on built-ins
This test is needed because BuiltInsSerializer uses lazy resolve to load and
serialize built-ins. We need to make sure that lazy resolve works exactly like
deserialization
2014-01-31 16:46:18 +04:00
Alexander Udalov e28819b42e Revert "Using default renderer in LoadBuiltinsTest."
This reverts commit 1d21ebf882.

Conflicts:
	compiler/testData/builtin-classes.txt
	core/descriptors/src/org/jetbrains/jet/renderer/DescriptorRendererImpl.java

Reverting a part of this (related to the field 'prettyFunctionTypes') because
will need to add a test that deserialized built-ins (obtained by
KotlinBuiltIns.getInstance()) are consistent with lazy resolved built-ins. This
test would break because while DescriptorRenderer renders pretty function types
it compares descriptors to the ones from KotlinBuiltIns, but in case of lazy
resolve descriptors created for built-ins would be different from
KotlinBuiltIns, so renderer wouldn't correctly render a function type
2014-01-31 16:46:18 +04:00
Alexander Udalov 1538191c66 Fix variance in Progression and Range 2014-01-31 16:46:17 +04:00
Alexander Udalov 4a0bfa5434 Remove outdated hack in DeclarationResolver 2014-01-31 16:46:17 +04:00
Alexander Udalov 877d9f2220 Update year to 2014 in generated files 2014-01-31 16:46:16 +04:00