Commit Graph

117 Commits

Author SHA1 Message Date
Michael Bogdanov
5f38c1d571 Fix for KT-10729: Accessing private const field in companion object from a function in the same companion generates run-time error 2016-02-01 18:42:19 +03:00
Denis Zharkov
505dc61611 Treat extension receiver as noinline parameter
#KT-9574 Fixed
2016-01-29 14:36:53 +03:00
Ilya Gorbunov
d49f5b95b0 Fix deprecations in testData 2016-01-27 19:05:19 +03:00
Ilya Gorbunov
4d5ec9be3f Drop identityEquals from builtins, compiler and tests. 2016-01-22 05:54:38 +03:00
Ilya Gorbunov
25c4453dc5 Cleanup deprecated symbol usages in testData 2016-01-22 05:54:38 +03:00
Michael Bogdanov
bf16783fb7 Fix for KT-9591: Exception on inlining
#KT-9591 Fixed
2016-01-21 18:44:05 +03:00
Michael Bogdanov
23480a5698 Supported inline of array convention simple cases; Fix for KT-9211: M13 an extension function that is inline, and for get(v) causes an exception when called using brackets
#KT-9211 Fixed
2016-01-20 17:33:50 +03:00
Michael Bogdanov
7eec1d8e1d Skip inline lambdas in 'InlineCallSite' parameter calculation; Fix for KT-10679: Wrong outer after inline
#KT-10679 Fixed
2016-01-15 18:24:33 +03:00
Michael Bogdanov
607f32615f Type uncapturing 2016-01-14 15:32:50 +03:00
Denis Zharkov
b8c79e689b Make all nested inlined closure classes public
#KT-6987 Fixed
2016-01-13 19:41:59 +03:00
Michael Bogdanov
66ab1c484c StackOverflow fix on type remapping 2016-01-13 16:57:36 +03:00
Michael Bogdanov
657b9ff808 Write enclosing method info for transformed objects 2016-01-12 15:51:57 +03:00
Michael Bogdanov
fee6d4f282 Type parameters mapping
#KT-10429 Fixed
2016-01-12 15:51:56 +03:00
Michael Bogdanov
f870e365fa Removed accessors for const properties 2015-12-25 11:28:10 +03:00
Michael Bogdanov
9cad1a912a Choose proper context for accessor generation: skip inline ones; Fix for KT-6102: Bypass synthetic accessor when inlining lambda which calls private member
#KT-6102 Fixed
2015-12-17 09:51:41 +03:00
Michael Bogdanov
b950bf0e6e Fix for KT-10259: Proguard can't find generated lambda class of lambda nested inside object?.let lambda
#Fixed KT-10259
2015-12-11 16:14:59 +03:00
Michael Bogdanov
4b8017e34b Fix for KT-7999: Wrong result when use nullable types as reified parameter, KT-8043: Unsafe cast to reified parameter throws NPE instead of TypeCastException
#KT-7999 Fixed
  #KT-8043 Fixed

~
2015-12-03 15:09:54 +03:00
Yan Zhulanow
9d1af5a17e Fix tests: "infix modifier required" and "operator modifier required" errors 2015-11-27 15:51:11 +03:00
Yan Zhulanow
a3ff3ffc45 Fix tests: "Placing function type parameters after the function name" error 2015-11-27 15:51:11 +03:00
Natalia Ukhorskaya
cb80a3e83a Write lineNumber for function literal with void return value
#KT-9865 Fixed
2015-11-26 11:39:18 +03:00
Michael Bogdanov
3da463be27 Fix for KT-10137: Internal error: couldn't inline method call on lambda taking extension function parameter
#KT-10137 Fixed
2015-11-24 16:32:06 +03:00
Michael Bogdanov
d4369c1df9 Keep inline transformation invariant: all captured parameters stored in topmost lambda/object
Fix for KT-8668: java.lang.ClassFormatError: Duplicate field name&signature (based on property access)

  #KT-8668 Fixed
2015-11-24 16:32:05 +03:00
Mikhail Glukhikh
cd1b58f2eb Final in interfaces: deprecation ---> error + relevant test fixes 2015-11-20 15:43:19 +03:00
Zalim Bashorov
28366a0bf4 Fix refer to classes from default package in SMAP 2015-11-11 22:59:05 +03:00
Michael Bogdanov
3651ec9294 Support access to protected members within inline functions 2015-11-11 14:34:48 +03:00
Michael Bogdanov
5a8ead0092 Fix for KT-8204: java.lang.VerifyError for super method invocation in inline function
#KT-8204 Fixed
2015-11-11 14:34:47 +03:00
Michael Bogdanov
0619ef47ac Fix for KT-9877: CompilationError: Cannot pop operand of empty stack
#KT-9877 Fixed
2015-11-06 11:46:13 +03:00
Michael Bogdanov
f3092bf390 Fix for KT-9637: Runtime crash when using class literal in inline functions with reified type parameters
#KT-9637 Fixed
2015-10-30 09:39:10 +03:00
Michael Bogdanov
34fccc6dae Fix for KT-6990: inline reified doesn't inline call in some cases
#KT-6990 Fixed
2015-10-30 09:39:09 +03:00
Michael Bogdanov
33bf314518 Fix for KT-6552 IllegalAccessError in inline function with "when" over enum across modules
#KT-6552 Fixed
2015-10-30 09:39:09 +03:00
Michael Bogdanov
63f7f90521 Test for obsolete KT-8047
#KT-8047 Obsolete
2015-10-28 14:43:05 +03:00
Michael Bogdanov
a7b3c70d21 Fix for KT-7017: Reified type referenced in object literal crashes at runtime
#KT-7017 Fixed
2015-10-22 16:06:13 +03:00
Michael Bogdanov
3e19514099 Test for obsolete KT-6988: java.lang.VerifyError: Bad return caused by inline reified
#KT-6988 Obsolete
2015-10-22 16:06:10 +03:00
Michael Bogdanov
f4d3ecf8e6 Generate public constructor for anonymous objects if it inside inline fun
#KT-9331 Fixed
2015-10-21 17:12:17 +03:00
Michael Bogdanov
1d84103cce Test for obsolete KT-6453
#KT-6453 Obsolete
2015-10-20 19:19:43 +03:00
Michael Bogdanov
378233e1f5 Test for obsolete KT-8095
#KT-8095 Obsolete
2015-10-20 19:19:42 +03:00
Michael Bogdanov
32d51af5dd Test for obsolete KT-8094
#KT-8094 Obsolete
2015-10-20 19:19:42 +03:00
Michael Bogdanov
3b02498ca8 Tests for private members and accessors for them 2015-10-18 17:53:28 +03:00
Michael Bogdanov
d78b59eb73 Package private visibility for private top-level members 2015-10-14 16:03:54 +03:00
Dmitry Petrov
7e9e427d4c Java 8 rules for method overrides:
- report errors on implementing methods of Any in interfaces
- update testData

~~~

Java 8 override restrictions: interface can't implement a method of 'Any'
- update compiler sources
2015-10-12 14:12:31 +03:00
Michael Bogdanov
882f6113dc Initial internal member mangling 2015-10-07 18:10:54 +03:00
Dmitry Jemerov
7c20630272 diagnostics for deprecated syntax of function type parameter list 2015-10-06 16:20:47 +02:00
Michael Bogdanov
3806ad65fc Fixed error with wrong parameter size calculation 2015-10-03 10:53:21 +03:00
Michael Bogdanov
2a19b06874 new tests 2015-10-03 10:53:18 +03:00
Michael Bogdanov
c83a5b8bd5 Proper param propagation in inline 2015-10-03 10:53:17 +03:00
Alexander Udalov
661f4efc68 Forbid callable references to members and extensions with empty LHS
This syntax is reserved to be likely used in the future as a shorthand for
"this::foo" where the resulting expression doesn't take the receiver as a
parameter but has "this" already bound to it
2015-10-03 04:37:04 +03:00
Michael Bogdanov
e91c556d06 Fix for wrong local variable table at inlining lambda with finallies 2015-10-02 13:41:41 +03:00
Denis Zharkov
3f6cadf9b7 Change FUNCTION_EXPRESSION_WITH_NAME severity to ERROR
Also drop deprecation related parts and get rid of usages of this `feature` within testData
2015-09-25 08:29:26 +03:00
Michael Nedzelsky
01ece0faa4 Revert "fix tests (internal -> public)"
This reverts commit e86bf03e76.
2015-09-23 17:45:40 +03:00
Denis Zharkov
098f5462eb Drop inlineOptions and fix forgotten usages 2015-09-23 12:18:12 +03:00