Commit Graph

13341 Commits

Author SHA1 Message Date
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 9e5af43ce1 Fix for KT-9788: AssertionError from back-end when we read field from inline function
#KT-9788 Fixed
2015-10-30 09:39:08 +03:00
Alexander Udalov 7046f63511 Move/inline stuff from TypeUtils to other modules 2015-10-29 21:16:07 +03:00
Alexander Udalov 5677ff60e7 Move/inline stuff from DescriptorUtils to other modules 2015-10-29 21:16:06 +03:00
Alexander Udalov 4d909d9012 Move LexicalScope to frontend 2015-10-29 21:16:05 +03:00
Alexander Udalov 09a36acee4 Minor, remove HTML from kdoc 2015-10-29 21:16:04 +03:00
Denis Zharkov 9b29181878 Minor. Add Kotlin overrides to test
#KT-6733 Obsolete
2015-10-29 21:05:52 +03:00
Denis Zharkov 7eed041a7a Use original descriptor when obtaining source 2015-10-29 21:05:52 +03:00
Denis Zharkov 5755af6b27 Remove wrong condition part: there could be irrelevant overrides from Kotlin 2015-10-29 21:05:52 +03:00
Denis Zharkov 291f0e57d1 Introduce FunctionDescriptor.initialSignatureDescriptor
Mostly it's needed for backend to extract descriptor with initial signature

For example:
class A implements CharSequence {
        char charAt(int index) {}
}

We see `charAt` this method as `fun get(index: Int): Char`, but in backend it
matters what signature had this descriptor before.
2015-10-29 21:05:51 +03:00
Denis Zharkov 94803ce1c4 Collect overrides of special builtin members in super types
#KT-9695 Fixed
2015-10-29 21:05:26 +03:00
Denis Zharkov 80bf7316c7 Add 'preserveSource' parameter to methods making substitution copies 2015-10-29 18:41:51 +03:00
Denis Zharkov ce34550c42 Introduce and implement SimpleFunctionDescriptor.createRenamedCopy 2015-10-29 18:41:50 +03:00
Stanislav Erokhin 69038063a6 Mark callable reference candidate as error when there is error type. 2015-10-29 15:30:32 +03:00
Stanislav Erokhin d019445493 Minor. Add tracing strategy to MutableResolvedCall 2015-10-29 15:30:32 +03:00
Stanislav Erokhin 97f6213873 Minor. Introduce public constructor ResolvedCallImpl for future use 2015-10-29 15:30:32 +03:00
Stanislav Erokhin 5e6a86fa70 Minor. Make public util function stripCallArguments in CallTransformer 2015-10-29 15:30:31 +03:00
Stanislav Erokhin cccc4fccd1 Minor. change several signatures 2015-10-29 15:30:31 +03:00
Stanislav Erokhin 1737c7251a Minor. Extract createLookupLocation for call 2015-10-29 15:30:30 +03:00
Alexander Udalov 925b0e567e Minor, delete leftovers from package part refactorings 2015-10-28 21:51:19 +03:00
Alexander Udalov c5ec3b0f6f Minor, drop HTML and improve language in ConstraintSystem kdoc 2015-10-28 21:45:51 +03:00
Alexander Udalov 5fc14e0224 Move constraint system, type intersection, common supertypes to compiler 2015-10-28 19:17:58 +03:00
Alexander Udalov d6e87c50ab Don't use TypeIntersector when loading generic Java constructors
This is not entirely type-safe but this case is so rare that hardly anyone will
be able to spot the change
2015-10-28 19:17:56 +03:00
Alexander Udalov 86bc21da30 Make getUpperBoundsAsType an utility, remove from TypeParameterDescriptor 2015-10-28 19:17:53 +03:00
Alexander Udalov 12d6b6e7e4 Use "Any?" as out-type for type parameters instead of intersection of bounds
Also refactor checkSubtypeForTheSameConstructor to compute everything in the
best order
2015-10-28 19:12:26 +03:00
Alexander Udalov bed75e8af2 Remove some unjustified usages of TypeParameterDescriptor#getUpperBoundsAsType 2015-10-28 19:12:24 +03:00
Alexander Udalov 426bddb54e Move OverridingUtil#getUpperBound to OverloadUtil, add tests on overloads 2015-10-28 19:12:05 +03:00
Alexander Udalov 477823b093 Change override rules when type parameters have multiple bounds
Instead of constructing the magic intersection type, compare sets of upper
bounds instead as javac does, modulo the substitution
2015-10-28 19:12:02 +03:00
Alexander Udalov a59ca2ea9f Simplify obsolete code in OverridingUtil 2015-10-28 19:12:00 +03:00
Alexander Udalov 996c14d071 Use representative upper bound in JetTypeMapper instead of just the first 2015-10-28 19:11:59 +03:00
Alexander Udalov 3918005364 Minor, improve compileJavaAgainstKotlin test
Render human-readable output when there are errors
2015-10-28 19:11:58 +03:00
Alexander Udalov d29757d927 Make upper bounds of type parameter a list instead of a set
The same for lower bounds, also refactor type parameter implementations
2015-10-28 19:11:56 +03:00
Alexander Udalov 1ce5f8458c Extract ClassMapperLite, add enlightening comment 2015-10-28 19:11:55 +03:00
Alexander Udalov 05f9f5a661 Drop path() from FQ names, remove weird code from FqNameUnsafe 2015-10-28 19:11:53 +03:00
Alexander Udalov 8a89662ea5 Remove FqNameBase, simplify FqName and FqNameUnsafe 2015-10-28 19:11:53 +03:00
Alexander Udalov 894a97a549 Rename field for property metadata cache to prevent problems in inline 2015-10-28 19:11:51 +03:00
Mikhail Glukhikh 6e3eef2d6f JetTypeInfo renamed to KotlinTypeInfo 2015-10-28 17:36:34 +03:00
Dmitry Petrov 4eb7458143 box test for KT-9712: tests were generated in different order. 2015-10-28 17:15:05 +03:00
Michael Nedzelsky c123af75fd issue warning instead of error in case of finite bound or non-expansive inheritance violation in java code 2015-10-28 17:02:02 +03:00
Mikhail Glukhikh d2c65a5336 Iterative call chain handling to get rid of JetTypeInfoInsideCallChain and other nasty things #KT-9754 Fixed 2015-10-28 16:00:30 +03:00
Michael Bogdanov 63f7f90521 Test for obsolete KT-8047
#KT-8047 Obsolete
2015-10-28 14:43:05 +03:00
Mikhail Glukhikh f8a70302ac Cleanup: get rid of effective visibility warnings 2015-10-28 14:31:51 +03:00
Natalia Ukhorskaya b8e649e843 Minor: rename test 2015-10-28 14:23:46 +03:00
Natalia Ukhorskaya 4f1af224d1 Rewrite CheckLocalVariableTableTest using assertEqualsToFile 2015-10-28 14:23:43 +03:00
Michael Bogdanov 7c7cff3d6e Updated diagnostic message for INVISIBLE_MEMBER_FROM_INLINE
#KT-7323 Fixed
2015-10-28 14:10:27 +03:00
Nikolay Krasko 911432c99c Use default render to check are all errors mentioned in tests. It's far more easier to read. 2015-10-28 13:39:46 +03:00
Michael Bogdanov f3e6fab68e Fix for KT-4250: IllegalAccessError when using protected java member from lambda function
#KT-4250 Fixed
2015-10-28 11:57:21 +03:00
Michael Bogdanov 0a70c80af3 Substitute superClassExpression with superCallClass in synthetic accessors 2015-10-28 11:57:20 +03:00
Dmitry Petrov 21d927b7a4 Test for KT-9712 (fixed along with KT-9717)
#KT-9712 Fixed
2015-10-28 10:39:03 +03:00