Commit Graph

9109 Commits

Author SHA1 Message Date
Zalim Bashorov d986b0e565 Ant buildtools: added base class for Kotlin compiler ant tasks.
As side effect:
 - used cli compiler in both ant tasks.
 - got the ability to use custom args in JS ant task too.
2014-10-07 16:32:07 +04:00
Michael Bogdanov d0d207f387 Fix for KT-3584: Wrong bytecode generated for local class with default parameters and captured local val
#KT-3584 Fixed
2014-10-07 10:13:53 +04:00
Michael Bogdanov 989cae9f1f Fix for KT-4357: Compiler error with infix call to Array.get
#KT-4357 Fixed
2014-10-07 10:13:53 +04:00
Michael Bogdanov 7be48c7336 Support move on depth 2 2014-10-07 10:13:52 +04:00
Michael Bogdanov e6c98078b3 Fixes for KT-4733 UnsupportedOperationException: don't know how to move type J to top of stack; KT-3430 VerifyError on a safe call to a primitive value
#KT-4733 Fixed
  #KT-3430 Fixed
2014-10-07 10:13:52 +04:00
Michael Nedzelsky df15e4767b extract getTraitMethods from ImplementationBodyGen to CodegenUtil 2014-10-07 08:37:20 +04:00
Michael Nedzelsky 0c3a7a9d99 add more tests for bridge methods (fake override) 2014-10-07 08:37:18 +04:00
Michael Nedzelsky 0dd17535d6 JS backend: add TARGET_BACKEND: ONLY_JVM for some tests for bridge methods 2014-10-07 08:36:46 +04:00
Valentin Kipyatkov d876e85eb2 Added API for changing type ref for function/variable and refactored code in some quickfixes to use it 2014-10-06 21:26:55 +04:00
Valentin Kipyatkov 2036b87ccf Deleted strange unused method 2014-10-06 21:26:55 +04:00
Pavel V. Talanov 95302fd540 Fix not generating KotlinLightField for OBJECT$ and INSTANCE$ fields
Fix navigation from Java to such fields
Fix TODO in converter
2014-10-03 21:35:06 +04:00
Alexey Sedunov 865c793561 Create From Usage: Do not suggest "val" for references used as assignment left-hand side 2014-10-03 20:18:42 +04:00
Michael Bogdanov 609caa8159 Clean 2014-10-03 17:24:15 +04:00
Michael Bogdanov 15043b3c6d Fixes for KT-4991: Prefix/postfix expressions resolved to local extensions are not supported in codegen;
KT-4989: Verify error on local functions and extensions;
KT-4987: NegativeArraySizeException on local extension convention function on nullable Int

  #KT-4991 Fixed
  #KT-4989 Fixed
  #KT-4987 Fixed
2014-10-03 17:24:14 +04:00
Michael Bogdanov 0c11ca680e Fix for KT-3969: Codegen fails on unary calls with default arguments
#KT-3969 Fixed
2014-10-03 17:24:14 +04:00
Alexey Tsvetkov 436fc33e84 Minor testData: fixed -Xno-inline option at extraHelp.out 2014-10-03 14:23:57 +04:00
Zalim Bashorov 0e075c7d5f JS backend: added the ability to turn off the inline optimization. 2014-10-03 14:23:53 +04:00
Alexey Tsvetkov 987708680f JS test: JS AST access from tests 2014-10-03 14:23:47 +04:00
Valentin Kipyatkov c0db84331e Fixed bug in join lines 2014-10-02 18:26:06 +04:00
Svetlana Isakova ce01c61811 Rename: auto cast -> smart cast 2014-10-01 18:52:52 +04:00
Svetlana Isakova 20f3403c80 Rename: this object, receiver argument -> dispatch receiver, extension receiver 2014-10-01 18:52:51 +04:00
Svetlana Isakova 1d2d2f4845 KT-5873 Exception in ArgumentMatchImpl on smart completion
#KT-5873 Fixed
2014-10-01 18:52:51 +04:00
Nikolay Krasko bc5f28d9fd Refactoring: rename KotlinLightMethodFromTrait -> KotlinLightMethodForTraitFakeOverride 2014-10-01 18:05:38 +04:00
Nikolay Krasko 897ebd0347 Linemarker tests 2014-10-01 18:02:52 +04:00
Nikolay Krasko 8ada9b68b0 Add special class for getting methods from traits 2014-10-01 18:02:31 +04:00
Pavel V. Talanov a8d77887af Introduce HighlightingWithDependentLibrariesTest
This tests that LibraryInfo dependencies affect source files highlighting
2014-09-30 21:59:01 +04:00
Alexey Sedunov be211d7cda Create From Usage: Generalize function builder for both functions and properties 2014-09-30 19:55:40 +04:00
Natalia Ukhorskaya 9032a6166e Fix Android tests 2014-09-30 17:48:40 +04:00
Natalia Ukhorskaya 4994e771d0 Evaluate expression: support EE for shared vars 2014-09-30 15:00:28 +04:00
Denis Zharkov f1d9d11590 Store stack values before inlines. #KT-5634 Fixed
Inlining code violates JIT assumptions for OSR in Java 8 in case of
starting with non-empty and containing cycles.

Fix is to mark each inlined block with markers and then store/restore
stack state before and after inlined body.
2014-09-29 17:16:58 +04:00
Michael Bogdanov 469db95662 Inline markers added 2014-09-29 17:16:57 +04:00
Pavel V. Talanov 54799b1a34 Internal visibility works the same as public
Fix test data
This change is needed to preserve old behaviour for M9
isFriend() utilities become unused after this change
2014-09-26 22:06:32 +04:00
Alexander Udalov cd0551078c Support static method references
#KT-5123 Fixed
2014-09-26 18:48:43 +04:00
Alexander Udalov 19497262b3 Don't lookup built-in classes by invalid names
#KT-5869 Fixed
2014-09-26 18:48:43 +04:00
Pavel V. Talanov 649a6f12bb Compute builtins directory url only once 2014-09-26 18:21:09 +04:00
Michael Bogdanov b3e075173b KT-5863: Inlined try/catch/finally block with non-local return doesn't work properly
#KT-5863 Fixed
2014-09-26 17:08:58 +04:00
Denis Zharkov da159c1e53 Simple version of redundant GOTO's removing 2014-09-26 12:37:33 +04:00
Denis Zharkov e1c2fbaec0 Minor refactoring: use array of MethodTransformers
instead of delegation
2014-09-26 12:37:32 +04:00
Denis Zharkov 35cda83c8f Refined merging logic #KT-5844 Fixed
If merging primitives of different integral types (e.g. I and Z) return
INT.
Else return UNINITIALIZED_VALUE
2014-09-26 12:37:04 +04:00
Alexander Udalov 80a7c64369 Prepend zeros to package part hash code 2014-09-26 10:23:14 +04:00
Alexander Udalov e2273a3d85 Update JetExceptionFilter behavior for top level closures
Now JetExceptionFilter can determine the source file looking at the class FQ
name for sure
2014-09-26 10:22:28 +04:00
Alexander Udalov 9f7979d0ce Workaround package part hash codes in OuterClassGenTest 2014-09-26 10:22:26 +04:00
Alexander Udalov 4d055d5ab4 Check header on package part classes in MethodInliner 2014-09-26 10:22:26 +04:00
Alexander Udalov c30aa7db84 Include package part name to top level closure names
#KT-4234 Fixed
 #KT-4496 Fixed
2014-09-26 10:22:25 +04:00
Alexander Udalov 7b374b9509 Refactor CodegenBinding
- store source element in synthetic descriptor for easier debugging and lesser
  amount of needed method parameters everywhere
- simplify methods which calculate necessary information for MutableClosure
2014-09-26 10:22:24 +04:00
Alexander Udalov 7d6da551d1 Minor, inline one of CodegenBinding#registerClassNameForScript 2014-09-26 10:22:24 +04:00
Alexander Udalov 4194f1c418 Minor, simplify old code in ImplementationBodyCodegen 2014-09-26 10:22:24 +04:00
Alexander Udalov 2ba9856a85 Calculate inner class access flags accurately 2014-09-26 10:22:23 +04:00
Alexander Udalov 806d79caba Minor, strip package name from class for script
This is done to be able to construct a FqName of this class. Currently it's not
possible because the name contains '/' and FqName validation fails.

This name is only used for debugging and even the ClassDescriptor is used only
as a key in binding context to store the internal name of the script class
2014-09-26 10:22:23 +04:00
Alexander Udalov 4cb9fbc026 Move CodegenBinding#computeAsmType() to JetTypeMapper, make private 2014-09-26 10:22:23 +04:00