Commit Graph

8709 Commits

Author SHA1 Message Date
Alexander Udalov 99a908e8fe If-then-else statements & correct line numbers
#KT-3036 Fixed
2012-11-22 22:31:58 +04:00
Alexander Udalov 8564c20baa Fix condition generation of empty if 2012-11-22 22:31:53 +04:00
Alexander Udalov af601b5a90 Single-branch if-statements
Single-branch if-expressions are now compiled to statements if the result is
not used

 #KT-3036 In Progress
2012-11-22 22:31:40 +04:00
Alexander Udalov 9c7724b7f9 Introduce CodegenStatementVisitor
Which will be used for generating statements (as opposed to generating
expressions always, as it is now)

Add StatementGenTest, which will check if we actually generate statements and
not expressions of type Unit, popping them off the stack later
2012-11-22 22:07:01 +04:00
Alexander Udalov cb08d27970 Refactor LineNumberTest
Allow passing custom expected & actual line numbers instead of those before
calls to test.lineNumber()
2012-11-22 18:54:22 +04:00
Nikolay Krasko aeb7a0f1a7 Fix signature - return List<T> instead of List<in T> 2012-11-22 18:06:00 +04:00
Andrey Breslav 4c55c484ed Sources for JPS test framework 2012-11-22 17:44:23 +04:00
Pavel V. Talanov a7536e1ae9 Fix ClassCastException introduced in https://github.com/JetBrains/kotlin/commit/8d501bd7f4f1093bcf29165755aff3f2a945c88a 2012-11-21 21:05:30 +04:00
Andrey Breslav 10cedf8576 Proper dependencies for the JPS plugin 2012-11-21 20:51:50 +04:00
Natalia.Ukhorskaya e4bb109060 Path separator fixed 2012-11-21 20:12:36 +04:00
Pavel V. Talanov c726c95921 Hack to make tests pass
Inner classes of interfaces and inner interfaces are put in NonStaticMemberScope
2012-11-21 19:49:52 +04:00
Pavel V. Talanov 7f617de8ac Rework test for KT1119 2012-11-21 19:49:51 +04:00
Pavel V. Talanov 6017604e38 Refactor: slightly improve code in WhenChecker 2012-11-21 19:49:50 +04:00
Pavel V. Talanov 8d501bd7f4 Fix WhenChecker after enum property type change 2012-11-21 19:49:50 +04:00
Pavel V. Talanov c39a4dc57a Change type of enum entry property
Now such properties have types corresponding to enum class not it's own enum entry classes
2012-11-21 19:49:49 +04:00
Pavel V. Talanov c42380dc0b Make enum entry classes have private visibility and properties have public vibility
Tests for backend are broken
2012-11-21 19:49:48 +04:00
Pavel V. Talanov 9c7cb64a30 Minor refactoring: static import ModifiersChecker static utilities 2012-11-21 19:49:47 +04:00
Pavel V. Talanov 662acb58b1 Remove JavaPropertyResolver#getRealOwner() which is in fact redundant
Injectors regenerated
2012-11-21 19:49:46 +04:00
Pavel V. Talanov 3ae89dbb1d Test for resolving static members of java enum
Add clarifying note
2012-11-21 19:49:45 +04:00
Pavel V. Talanov b5b6f58b6b Test for resolving inner classes 2012-11-21 19:49:44 +04:00
Pavel V. Talanov 737b246b01 Fix resolve of inner and nested classes in JavaDescriptorResolver 2012-11-21 19:49:44 +04:00
Pavel V. Talanov 96b48aedfc Very simple test for resolving static members of java classes 2012-11-21 19:49:43 +04:00
Pavel V. Talanov 86cc1db609 Refactor: extract superclass from AnnotationJavaDescriptorResolverTest 2012-11-21 19:49:42 +04:00
Pavel V. Talanov 613a298e82 Use the same code to resolve classifiers for JavaClassStaticMembersScope as for non static members 2012-11-21 19:46:18 +04:00
Pavel V. Talanov 0c0d4d28c8 Simplify implementation of JavaClassNonStaticMembersScope#getClassifier()
Also cache inner classes and classifiers
2012-11-21 19:46:17 +04:00
Pavel V. Talanov 4b64e312fe Refactor: move ClassDescriptorFromJvmBytecode#getConstructors() logic to JavaClassNonStaticMembersScope 2012-11-21 19:46:16 +04:00
Pavel V. Talanov 8ac63a53ad Minor change to make code green 2012-11-21 19:46:15 +04:00
Pavel V. Talanov 05cf6a407a Refactor: split implementation of JavaBaseScope#computeAllDescriptors() and make computeInnerClasses() abstract, provide implementation in subclasses 2012-11-21 19:46:14 +04:00
Pavel V. Talanov 5bbe9af4bb Minor refactor 2012-11-21 19:46:13 +04:00
Pavel V. Talanov b6aa9b2bce Make JavaClassStaticMembersScope extend JavaClassMembersScope instead of JavaPackageScope, use JavaBaseScope instead of JavaPackageScope in JavaNamespaceResolver 2012-11-21 19:46:13 +04:00
Pavel V. Talanov 1ced967bc9 Refactor: pull getPsiElement() method Up 2012-11-21 19:46:12 +04:00
Pavel V. Talanov 32b7f64792 Refactor: extract JavaBaseScope getResolver() method 2012-11-21 19:46:11 +04:00
Pavel V. Talanov aad4e306b2 Make JavaBaseScope#computeFunctionDescriptor() abstract and provide implementation in subclasses 2012-11-21 19:46:10 +04:00
Pavel V. Talanov 908b58878b Introduce JavaClassNonStaticMembersScope and use instead of JavaClassMembersScope 2012-11-21 19:46:09 +04:00
Pavel V. Talanov eb155bb204 Refactor: remove useless check in PsiDeclarationProviderFactory 2012-11-21 19:46:08 +04:00
Pavel V. Talanov da47c31a86 Introduce JavaScopeForKotlinNamespace, JavaPackageScopeWithoutMembers, JavaClassStaticMembersScope, much clearer and more explicit logic in JavaNamespaceResolver#createNamespaceScope()
These classes explicitly represent 3 types of scopes that are created for NamespaceDescriptor in JDR
2012-11-21 19:46:07 +04:00
Natalia.Ukhorskaya ff45322d1a Add Java Source Roots to classpath
#KT-3062 Fixed
2012-11-21 19:44:29 +04:00
Andrey Breslav 3e1a5a7be1 Report exceptions from both makes to Exception Analyzer 2012-11-21 19:31:14 +04:00
Andrey Breslav 4ed07cd9ae Introducing KotlinPaths to impose some discipline on compiler/library location 2012-11-21 18:16:09 +04:00
Andrey Breslav 4ee76a6649 KT-3056 Kotlin: Cannot find kotlinc home. Make sure plugin is properly installed
#KT-3056 Fixed
2012-11-21 14:12:51 +04:00
Evgeny Gerashchenko 19e283a333 Fixed printing multiple errors in Kotlin signatures. 2012-11-21 14:00:51 +04:00
Evgeny Gerashchenko cda953942d Added @ExpectLoadErrors annotations to test data.
Also, fixed syntax error in AddNullabilitySameJavaType.
2012-11-21 14:00:51 +04:00
Evgeny Gerashchenko 4b465afdfa Saving order of super functions in SignaturesPropagation. 2012-11-21 14:00:51 +04:00
Evgeny Gerashchenko 37cfb2fcc0 Checking errors when loading from Java in tests. 2012-11-21 14:00:51 +04:00
Svetlana Isakova 691cf52835 removed unused component dependencies 2012-11-20 19:54:55 +04:00
Svetlana Isakova 7773f713b7 extracted method usage 2012-11-20 19:54:55 +04:00
Svetlana Isakova 39450dd954 resolve function literal expression (as parameter) after resolve call
(therefore only once)
while resolve use FAKE_FUNCTION_TYPE as type
for function literal (which is a subtype/supertype for any function type)
2012-11-20 19:54:55 +04:00
Svetlana Isakova 473a969598 ArgumentTypeResolver introduce
(component used in CallResolver)
2012-11-20 19:54:54 +04:00
Svetlana Isakova e8f9097127 do not mark error type
if the expression is resolved to namespace
 (EXPRESSION_EXPECTED_NAMESPACE_FOUND error)
2012-11-20 19:54:45 +04:00
Svetlana Isakova d0a6f6252d fixed: DEBUG_INFO_ERROR_ELEMENT should be visible in tests 2012-11-20 19:53:03 +04:00