Commit Graph

7406 Commits

Author SHA1 Message Date
Svetlana Isakova ac39daace6 KT-2667 Support multi-declarations in for-loops in control flow analysis
#KT-2667 fixed
2012-08-23 14:25:13 +04:00
Alex Tkachman 21774f5288 final modifiers added 2012-08-23 08:33:13 +03:00
Svetlana Isakova f8edaad420 make modality 'FINAL' for non-class members
not depend on actual modifier since it's not legal there
2012-08-22 20:42:35 +04:00
Svetlana Isakova bac0078646 check modifiers for package declarations
removed specific errors for illegal 'abstract' modifier
2012-08-22 20:42:35 +04:00
Svetlana Isakova 4a5269bb2d set LOCAL visibility for local functions
(it can't be INHERIT)
2012-08-22 20:42:35 +04:00
Svetlana Isakova ea611cb51d check modifiers for local declarations 2012-08-22 20:42:35 +04:00
Svetlana Isakova 5bac198165 all modifiers checks/resolve moved to ModifiersChecker 2012-08-22 20:42:35 +04:00
Natalia.Ukhorskaya 563d8a9001 Android test: add new special files (temporary commented in tests) 2012-08-22 20:37:11 +04:00
Evgeny Gerashchenko ba59369f9d Added another workaround for CME in IDEA code in tests (to be removed after updating to new IDEA). 2012-08-22 20:19:45 +04:00
Alexander Udalov d41f92370a comment failing test after 0cc27c0 2012-08-22 20:13:10 +04:00
Alex Tkachman fb5bf2f8c6 local classes without closures 2012-08-22 18:40:37 +03:00
James Strachan cbde1e1e46 added a little test case to see if using $ variables works in kotlin for JS generation (e.g. for angularjs support) 2012-08-22 16:17:40 +01:00
Pavel V. Talanov 0a044b18d5 Remove VariableDescriptor#isObjectDeclaration and usages.
Replace with BindingContext trace slice OBJECT_DECLARATION_CLASS.
Remove corresponding field from constructor.
Introduce hack in JavaDescriptorResolver which creates dummy class descriptors for enum entry objects.
2012-08-22 18:06:37 +04:00
Andrey Breslav ebef32e0f7 Reverting the essential part of 0cc27c0 2012-08-22 18:03:14 +04:00
Nikolay Krasko b277f2a7f4 Assert that resolve is not performed in dispatch thread 2012-08-22 17:59:41 +04:00
Nikolay Krasko f18166871d Don't block IDEA while trying to compute hint for declaration.
KT-2494 Idea stop working when editing the file in the attached project
 #KT-2494 Fixed
2012-08-22 17:19:15 +04:00
Andrey Breslav 0cc27c0176 Use generic invokeFunction() instead of ad-hoc one for in-range conditions in when 2012-08-22 17:07:52 +04:00
Andrey Breslav 08e3da6769 Rename 2012-08-22 16:48:30 +04:00
Andrey Breslav 72de754731 Refactoring FrameMap:
- dangerous enter() and leave() methods removed
- all variables are eneted/left with their type, not numeric size
2012-08-22 15:03:18 +04:00
Andrey Breslav 1c2e8ad550 BindingContextUtils.getNotNull() 2012-08-22 15:03:18 +04:00
Andrey Breslav 763e15a567 Clarifying message + making fields final 2012-08-22 15:03:18 +04:00
Natalia.Ukhorskaya 096963d7ad Android test: add new special files (must compile java file) 2012-08-22 14:37:45 +04:00
Natalia.Ukhorskaya 9e66e83603 idea_default.xml : add ignorableAnnotations option 2012-08-22 14:32:02 +04:00
Natalia.Ukhorskaya 3d9ad3f6cb ExpressionCodegen: take EnumEntry type from containingDeclarationDescriptor
JavaDescriptorResolver: pass to propertyDescriptor correct value of isObject parameter
2012-08-22 14:32:01 +04:00
Natalia.Ukhorskaya 6740a712d8 Move blackBoxWithJavaFile from FunctionGenTest to CodegenTestCase 2012-08-22 14:32:00 +04:00
Natalia.Ukhorskaya aeb297d417 Move isEnumClassObject from JavaDescriptorResolver to DescriptorUtils 2012-08-22 14:31:59 +04:00
Svetlana Isakova b7966f4512 test fixed 2012-08-22 13:41:27 +04:00
Svetlana Isakova 5779ac15c0 Not get supertypes of Nothing
(exception EA-37833)
2012-08-22 12:35:06 +04:00
Natalia.Ukhorskaya 11fdeac930 Rename misleading method: compileKotlin -> analyzeKotlin. 2012-08-21 21:40:52 +04:00
Natalia.Ukhorskaya 2c4960b4fb Test for abstract function in java enum. 2012-08-21 21:40:51 +04:00
Natalia.Ukhorskaya 36ca99ade0 Use validateFqName in FqName(String) constructor.
Fix JavaDescriptorResolver and JavaClassOrPackageScope accordingly.
2012-08-21 21:40:50 +04:00
Natalia.Ukhorskaya 4b002d1d6d Fix test data according to latest changes in JavaDescriptorResolver. 2012-08-21 21:40:49 +04:00
Natalia.Ukhorskaya 2e5d18c440 Tests for loading enum descriptors from compiled java/kotlin code. 2012-08-21 21:40:48 +04:00
Natalia.Ukhorskaya 6920e497d5 JetDiagnosticsTest for using java enum in kotlin. 2012-08-21 21:40:47 +04:00
Natalia.Ukhorskaya 8c9cc058c7 Remove hack in JavaPackageScope#getClassifier. 2012-08-21 21:39:52 +04:00
Natalia.Ukhorskaya 8b8c595f4e JavaDescriptorResolver: represent Java enums as kotlin enums.
Split members from java enum psiclass into two groups: for class itself and for class object:
Hack JavaClassMembersScope to be able to use it for static members.
Hack JavaDescriptorResolverHelper to process fields for enums read from class files.

Introduce JavaDescriptorResolver#ResolverEnumClassObjectClassData.

Specially treat values and valueOf methods.
2012-08-21 21:39:51 +04:00
Natalia.Ukhorskaya d28e59ac37 Change parameter in DescriptorResolver#createEnumClassObject*Method. 2012-08-21 21:39:49 +04:00
Natalia.Ukhorskaya 546ec296e2 Extract ResolverClassData as superclass from ResolverBinaryClassData. Use it instead. 2012-08-21 21:39:48 +04:00
Andrey Breslav 5b77210c95 KT-2632 Check multi-declaraions in for-loops
#KT-2632 Fixed
2012-08-21 19:49:26 +04:00
Andrey Breslav 22974391eb Extract method 2012-08-21 19:49:26 +04:00
Andrey Breslav 2dd2a4aaf4 Multi-declaration resolution logic moved to Util class 2012-08-21 19:49:25 +04:00
Evgeny Gerashchenko 48af006c08 Added workaround for CME in IDEA code in tests (to be removed after updating to new IDEA). 2012-08-21 19:41:20 +04:00
Andrey Breslav af85c99ffd KT-2627 Parse for with multiple range variables
#KT-2627 Fixed
2012-08-21 19:10:29 +04:00
Andrey Breslav d8e8145954 Grammar for property declarations fixed 2012-08-21 18:23:16 +04:00
Andrey Breslav 119612fcc2 Code duplication eliminated:
Ordinary local variables and multi-declarations are initialized using the same logic
2012-08-21 17:14:49 +04:00
Svetlana Isakova 47362bf2ac KT-2633 Support multiple assignment in JVM Back-end
#KT-2633 Fixed
2012-08-21 16:32:19 +04:00
Svetlana Isakova 239c5fd94b invokeFunction() works with Call objects instead of psi elements 2012-08-21 16:32:19 +04:00
Svetlana Isakova a7636f7b74 Shared var initialization moved to variable declaration generation 2012-08-21 16:32:19 +04:00
Svetlana Isakova 6527df3be1 generateBlock() refactored
- list of statements is traversed only once
- code duplication removed
- variable scopes start at declarations
2012-08-21 16:32:19 +04:00
Svetlana Isakova 2798ea4563 clean up 2012-08-21 16:32:19 +04:00