Commit Graph

1410 Commits

Author SHA1 Message Date
Andrey Breslav 054ecdaa6c More info in the assert message 2013-11-21 13:07:39 +04:00
Andrey Breslav 0c2e1fb806 @NotNull annotations on descriptor classes 2013-11-21 13:07:34 +04:00
Natalia Ukhorskaya d241bfc138 KT-3517 Can't call .equals() on a boolean
#KT-3517 Fixed
2013-11-19 12:05:26 +04:00
Alexey Sedunov 523e44f00d Annotate JetVisitorVoid and its inheritors 2013-11-18 18:49:30 +04:00
Andrey Breslav 0c1c0e0099 Always generate local variable table to preserve parameter names 2013-11-15 19:41:25 +04:00
Alexander Udalov 76e347e530 Minor, rename method 2013-11-14 19:11:20 +04:00
Alexander Udalov 69ed375ce1 Extract SpecialNames utility class 2013-11-14 19:11:19 +04:00
Alexander Udalov d6aa7c2d23 Minor, inline method 2013-11-14 19:11:19 +04:00
Andrey Breslav 6efd72738a More information in error message 2013-11-13 18:09:37 +04:00
Pavel Talanov 82feef23c3 Rename: OverridingUtil#filterOverrides -> filterOutOverridden to be more precise 2013-11-12 14:15:43 +04:00
Andrey Breslav 2b6f688a52 Annotate fields from traits' class object properties 2013-11-11 17:20:16 +04:00
Andrey Breslav 1f574a9feb Do not annotate private members and their parameters (to save space) 2013-11-11 17:20:15 +04:00
Andrey Breslav 0959f7e37c Don't mark primitive types as @NotNull 2013-11-11 17:20:15 +04:00
Andrey Breslav f3901d2844 visitAnnotation() could return null for light classes 2013-11-11 17:20:15 +04:00
Andrey Breslav 2873f74932 Generate @Nullable/@NotNull annotations on Kotlin declarations (for IDEA interop) 2013-11-11 17:20:15 +04:00
Andrey Breslav 4268d8aa27 Generate parameter annotations even in LIGHT_CLASSES mode 2013-11-11 17:20:15 +04:00
Mikhael Bogdanov 1795b2a0bc KT-4118 Closures mix makes code fail on runtime
#KT-4118 Fixed
2013-11-11 12:22:06 +04:00
Zalim Bashorov 4cea0a3de4 Fix build after change api 2013-11-08 18:14:21 +04:00
Zalim Bashorov ae8ac28ddc Split OutputFileFactory to OutputFileCollection and OutputFile 2013-11-08 18:14:21 +04:00
Zalim Bashorov 5dd4eb780e Extracted OutputFileFactory interface. 2013-11-08 18:14:20 +04:00
Mikhael Bogdanov df03eb5330 KT-4173: Can't pass a non-trivial closure to a super-call for object expression
#KT-4173 Fixed
2013-11-08 15:19:20 +04:00
Mikhael Bogdanov 2c75bdacc5 Added exception for outer absence 2013-11-08 14:10:35 +04:00
Mikhael Bogdanov 3ee9b8cbc5 Code rearrangment 2013-10-31 16:48:31 +04:00
Mikhael Bogdanov ee2a30f34f KT-4152 Wrong postfix increment/decrement calculation
#KT-4152 Fixed
2013-10-31 16:48:24 +04:00
Mikhael Bogdanov c325dfffd9 KT-3523: VerifyError for invoke function in inner class
KT-4106: VerifyError: Can't access outer this in a lambda in inner class' constructor
KT-3152: VerifyError when accessing from a function of object to a field of outer outer class

  #KT-3523 Fixed
  #KT-4106 Fixed
  #KT-3152 Fixed
2013-10-31 16:42:53 +04:00
Mikhael Bogdanov 10396b853a Code block reorganization 2013-10-31 16:42:53 +04:00
Mikhael Bogdanov 318214b9d7 Capturing this in constructor context
KT-4086 VerifyError creating anonymous object in constructor
 #KT-4086 Fixed
2013-10-31 16:42:53 +04:00
Mikhael Bogdanov 936c0a0ae9 Lazy calculation of outer expression 2013-10-31 16:42:51 +04:00
Mikhael Bogdanov 47cd9a71a2 Inline local var 2013-10-31 12:31:39 +04:00
Mikhael Bogdanov 1e5b250d01 Remove redundant parameter 2013-10-31 12:31:38 +04:00
Mikhael Bogdanov c76c2d3dff Calculation whether class is inner via 'isInner' method 2013-10-31 12:31:38 +04:00
Mikhael Bogdanov fb39217dc3 KT-4140 VerifyError: Property in class object
#KT-4140  Fixed
2013-10-31 12:31:22 +04:00
Andrey Breslav ffd9b80f76 JavaClassDescriptor interface extracted 2013-10-29 14:21:55 +04:00
Mikhael Bogdanov 3ee918b084 KT-4138: java.lang.VerifyError: (class: kotlin/sql/tests/h2/Foo, method: getA$b$0 signature: ()Lkotlin/sql/tests/h2/Foo;) Wrong return type in function
#KT-4138 Fixed
2013-10-28 15:18:51 +04:00
Mikhael Bogdanov e3882e2dfb KT-4137: Verify error
#KT-4137 Fixed
2013-10-25 16:43:25 +04:00
Andrey Breslav ed95463d1e Map Nothing to java.lang.Void 2013-10-25 15:39:01 +04:00
Mikhael Bogdanov 604be8e0c1 KT-4119: Back-end (JVM) Internal error on code with local extensions
#KT-4119 Fixed
2013-10-24 17:24:45 +04:00
Alexander Udalov 464b0dea4b Don't reuse other descriptor's value parameters
This resulted in a rewrite at INDEX_FOR_VALUE_PARAMETER slice, since some value
parameters were found twice in different function descriptors
2013-10-22 23:08:34 +04:00
Alexander Udalov 41e2300473 Rename MemberMap and implement it via SlicedMap 2013-10-22 23:08:34 +04:00
Alexander Udalov 4105455179 Serialize value parameter indices on JVM
This will help to load annotations on value parameters
2013-10-22 23:08:33 +04:00
Andrey Breslav ea2b6e4546 Do not throw an exception when a when-statement with no else makes no match 2013-10-21 19:29:01 +04:00
Andrey Breslav 2a43d2adee Report correct build targets for outputs + tests on output removal 2013-10-21 19:21:23 +04:00
Alexander Udalov b8db438db1 Refactor codegen of property backing fields, TImpl, etc.
- remove synthetic method code generation from TraitImplBodyCodegen, use
  PropertyCodegen for that
- don't try to generate synthetic methods for constructor properties
- inline methods, NotNull, renames, etc.
2013-10-17 19:01:45 +04:00
Alexander Udalov b7789da3b9 Load annotations on properties declared in traits 2013-10-17 19:01:45 +04:00
Alexander Udalov 5a1daaa4b6 Generate values()/valueOf() even for empty enums 2013-10-17 19:01:45 +04:00
Alexander Udalov b4ecb36445 Move JetTypeMapperMode to JetTypeMapper class 2013-10-17 19:01:44 +04:00
Alexander Udalov af2a52bd4e Add JetTypeMapper.mapClass
Should be used instead of "mapType(*.getDefaultType(), IMPL)" pattern
2013-10-17 19:01:44 +04:00
Alexander Udalov d22edcdbb3 Delete JetTypeMapperMode.TRAIT_IMPL
The code is much easier with a simple method mapTraitImpl
2013-10-17 19:01:44 +04:00
Andrey Breslav 3960426698 TypeProjection interface extracted 2013-10-17 18:15:51 +04:00
Alexander Udalov 08bc67b925 Generate synthetic methods for annotated properties in TImpl classes
Traits themselves can't have these methods, since it'd be a weird public method
in an interface

 #KT-4072 Fixed
2013-10-16 15:02:37 +04:00