Commit Graph

11889 Commits

Author SHA1 Message Date
Alexander Udalov 6ab1c6bfb3 Add KParameter.type, KType, KType.isMarkedNullable 2015-07-29 21:36:38 +03:00
Alexander Udalov 81ef1c19d8 Support KClass.constructors in reflection 2015-07-29 21:36:37 +03:00
Alexander Udalov da5cffdb60 Support KClass.functions and declaredFunctions 2015-07-29 21:36:36 +03:00
Alexander Udalov 50dbda1e1a Introduce KClass.members, make properties/extensionProperties extensions
To avoid significant growth of KClass and KPackage interfaces
2015-07-29 21:36:36 +03:00
Alexander Udalov 2492977274 Additional tests on reflection for Java methods 2015-07-29 21:36:35 +03:00
Alexander Udalov 5962b79126 Support introspection of parameter names and indices in reflection 2015-07-29 21:36:34 +03:00
Alexander Udalov 87c70aa2ae Make Class<*>.kotlinPackage nullable 2015-07-29 21:36:33 +03:00
Pavel V. Talanov 0513994749 Minor: remove "? extends" when injecting iterable into java class 2015-07-29 17:09:41 +03:00
Ilya Ryzhenkov 28df61b6f1 Support ordinary Java invariant Iterable<T> in component container. 2015-07-29 17:09:40 +03:00
Ilya Ryzhenkov e12e67468f Distinguish implicit components in dump 2015-07-29 17:09:39 +03:00
Mikhail Glukhikh 41500c916b java Retention + Repeatable = kotlin.annotation.annotation (but java Repeatable is still intact), a few tests 2015-07-29 16:28:36 +03:00
Mikhail Glukhikh 10ba9c7264 Repeatable test renamed 2015-07-29 16:28:33 +03:00
Mikhail Glukhikh a072550931 Class is an annotation iff it is annotated by kotlin.annotation.annotation, or is kotlin.annotation.annotation itself.
JetClassOrObject.isAnnotation() is no more in use during resolve. Additional test.
2015-07-29 16:28:26 +03:00
Michael Nedzelsky e9d7bbf493 fix KT-8648 Exception from incremental compilation
#KT-8648 Fixed
2015-07-29 15:14:45 +03:00
Mikhail Glukhikh 8a61441be9 AnnotationChecker code cleanup (property access syntax, imports) 2015-07-29 11:35:40 +03:00
Mikhail Glukhikh 39b29068cb Refactoring: AnnotationTargetChecker --> AnnotationChecker 2015-07-29 11:33:33 +03:00
Alexey Sedunov 5bc2a4b14c Create From Usage: Do not keep semantic information in quickfix instances directly as it leads to memory leaks 2015-07-28 23:24:22 +03:00
Michael Nedzelsky 2e18b3de9d prepare to retire Type.Constructor message in descriptors.proto after M13 2015-07-28 19:49:00 +03:00
Michael Nedzelsky 459eed7d28 introduce custom options for messages in proto files 2015-07-28 19:48:44 +03:00
Michael Nedzelsky ef8381f8af two optional fields have been added to Type.Constructor message in descriptors.proto in preparation to remove field which requires double interpetation 2015-07-28 19:48:37 +03:00
Mikhail Glukhikh dbf6da89b7 java.lang.annotation.Repeatable is deprecated + test in a new group: diagnostic tests with Java 8. 2015-07-28 19:03:55 +03:00
Alexey Sedunov 7dc430e50b Pull Up: Support super-interfaces 2015-07-28 18:48:35 +03:00
Alexey Sedunov 1a09741c0a Pull Up: Move property initializers 2015-07-28 18:48:33 +03:00
Alexey Sedunov 39ff3c3000 Pull Up: Initial support
#KT-7330 Fixed
2015-07-28 18:48:29 +03:00
Alexey Sedunov 3c36795984 Refactoring: Extract JetClassOrObject.getOrCreateBody() function 2015-07-28 18:48:26 +03:00
Mikhail Glukhikh a86857fbb5 Java Deprecated is mapped in accordance with Java Target / Retention, some diagnostic changed 2015-07-28 17:13:37 +03:00
Mikhail Glukhikh d6406d8d4a Annotation repetition checking with a pair of tests, some old tests changes 2015-07-28 17:13:32 +03:00
Mikhail Glukhikh 8beafe90a0 Retention / target for some standard annotations 2015-07-28 17:13:29 +03:00
Dmitry Jemerov 978fb2c1cf don't go outside of file when trying to find enclosing element for declaration 2015-07-27 11:43:12 +02:00
Natalia Ukhorskaya 47b94326ec Add NotNull assertions at project.getComponent
(cherry picked from commit 9b1167c)
2015-07-27 12:06:01 +03:00
Dmitry Petrov a64f1a86c0 Fix KT-8608: Compiler crashes with assertion Restore stack is unavailable
- fix SAVE_STACK_BEFORE_TRY insertion:
  TRYCATCHBLOCK LA, LB, LC
  LA
    NOP
    try_body
  LB
    ...
  LC
    handler_body
should be transformed into:
  LA
    {SAVE_STACK_BEFORE_TRY}
  LA' // new TCB start label
    NOP
    try_body
  LB
    ...
  LC
    handler_body
with all TCBs start labels remapped

- properly wrap exceptions from MandatoryMethodTransformer

 #KT-8608 Fixed
2015-07-27 10:40:14 +03:00
Sergey Mashkov 0453368990 Better main function recognition and tests
fix vararg main
2015-07-24 17:20:40 +03:00
Sergey Mashkov 8457b53f8b Better main function recognition and tests 2015-07-24 17:20:40 +03:00
Pavel V. Talanov 273e69c02c Refactor: Pass buitlins into IntegerValueTypeConstant and IntegerValueTypeConstructor 2015-07-24 13:47:59 +03:00
Pavel V. Talanov 0bed8bb7d4 Minor: Inject builtins into OverloadingConflictResolver 2015-07-24 13:47:57 +03:00
Pavel V. Talanov 4599c962f0 Refactor: make OverloadingConflictResolver and ResolutionResultsHandler components instead of singletons 2015-07-24 13:47:57 +03:00
Pavel V. Talanov 1559c53007 Minor: Inject builtins into DataFlowAnalyzer 2015-07-24 13:47:56 +03:00
Pavel V. Talanov 78f55583f0 Minor: CompileTimeConstantUtils, builtins are not needed to check for string type 2015-07-24 13:47:55 +03:00
Pavel V. Talanov 7203a7833a Minor: Inject builtins in ControlFlowAnalyzer 2015-07-24 13:47:55 +03:00
Pavel V. Talanov 99e8ba1947 Get rid of static function ConstantExpressionEvaluator.evaluateToConstant 2015-07-24 13:47:53 +03:00
Pavel V. Talanov 6698b3b070 Refactor: get rid of static ConstantExpressionEvaluator.evaluate function
Move ArgumentTypeResolver.getLastElementDeparenthesized to JetPsiUtil
2015-07-24 13:47:52 +03:00
Ilya Gorbunov 8892192e9c Generate openRange tests for compiler.
#KT-4665
2015-07-24 04:13:53 +03:00
Valentin Kipyatkov 383a4da231 No annotations rendered in completion and other places
KT-5517 Completion shouldn't show inlineOptions annotation

 #KT-5517 Fixed
2015-07-23 22:02:06 +03:00
Pavel V. Talanov 8cc9739f72 Refactor: Pass TargetPlatform instead of configurator, hide DynamicTypesSettings inside configurator 2015-07-23 16:15:38 +03:00
Pavel V. Talanov 84b8ed00c5 Refactor: Move TargetPlatform to frontend, make it expose platform dependant resolve services
AdditionalCheckerProvider -> PlatformConfigurator which operates directly on container
2015-07-23 16:15:35 +03:00
Pavel V. Talanov b452c20cc2 Minor: Remove unused references to AdditionalCheckerProvider 2015-07-23 16:15:31 +03:00
Pavel V. Talanov 3227ae5577 Inject non-context dependent CallCheckers instead of getting them from context 2015-07-23 16:15:28 +03:00
Pavel V. Talanov 2885da8993 Remove AdditionalTypeChecker from context, inject into points of usage 2015-07-23 16:15:18 +03:00
Pavel V. Talanov be98c4f96d DataFlowUtils -> DataFlowAnalyzer and make it a component 2015-07-23 16:15:13 +03:00
Pavel V. Talanov 985336d6cc Remove SymbolUsageValidator from contexts 2015-07-23 16:15:10 +03:00