Commit Graph

21069 Commits

Author SHA1 Message Date
Michael Nedzelsky a7ba93c1d1 add flexibleTypeCapabilitiesDeserializer field to BuiltinsPackageFragment 2015-03-18 09:38:42 +03:00
Michael Nedzelsky 77e9ab8ad7 JS: FunctionReader: remove unnecessary check for libraries 2015-03-18 09:38:40 +03:00
Michael Nedzelsky 69417903e2 kotlin_lib_ecma5.js: add metadata function 2015-03-18 09:38:38 +03:00
Michael Nedzelsky a6c21fbe85 JS backend: LibraryUtils: add support for load and write metadata 2015-03-18 09:38:36 +03:00
Michael Nedzelsky c927b69103 DescriptorSerializer: add skip argument to packageProto method 2015-03-18 09:38:33 +03:00
Michael Nedzelsky 930ecb9cf9 move BuiltInsSerializerExtension from builtins-serializer to serialization module 2015-03-18 09:38:25 +03:00
Michael Bogdanov d765d899a7 Fix NPE with origin calculation 2015-03-18 09:22:56 +03:00
Zalim Bashorov 0ddec2d9b5 Minor in JS backend: throw IllegalStateException instead of UnsupportedOperationException inside CallCase 2015-03-18 08:55:56 +03:00
Zalim Bashorov 8421a15521 JS backend: report diagnostic when try to get referenece on builtin members instead of crash with Exception. 2015-03-18 08:55:56 +03:00
Zalim Bashorov 975c4ffab5 JS backend: report diagnostic for class literal(Foo::class) instead of crash with Exception. 2015-03-18 08:55:56 +03:00
Zalim Bashorov 8d6cbb671a JS backend: report diagonstic message for unsupported element instead of throw exception.
#KT-6507 Fixed
2015-03-18 08:55:56 +03:00
Alexander Udalov 593613609f Document JVM-specific reflection API 2015-03-17 23:39:15 +03:00
Alexander Udalov 59d3731b93 Document generated K*Functions 2015-03-17 23:39:14 +03:00
Alexander Udalov e34b3c5298 Document interfaces in package kotlin.reflect 2015-03-17 23:39:14 +03:00
Alexander Udalov fcdd5a872c Rename dispatchReceiver -> instance, T -> E 2015-03-17 23:39:14 +03:00
Alexander Udalov a4f9fe1eaa Filter out invisible fakes in KClass.properties
A user will rarely need those at the moment, and there's currently no other way
to let him filter out them by himself
2015-03-17 23:39:13 +03:00
Alexander Udalov d3abd54b06 Add 'val KClass.declaredProperties', make getProperties a property 2015-03-17 23:39:13 +03:00
Alexander Udalov 4a61f2751c Finish off KObject
The ABI version was increased to 22 in 94937a3
2015-03-17 23:39:13 +03:00
Denis Zharkov 36665fe3b8 Change logic of constructor delegation call resolution
- If class has type arguments (A<T1,..>) then
  resolve it's delegation call to `this` as for expression A<T1, ..>()
  like type arguments are explicitly specified.

- Same logic works for `super` delegation calls.

- It could be just enough to substitute all candidates before resolve
  but diagnostic messages looks more correct when substitution is
  performed within CandidateResolver.performResolutionForCandidateCall
  because it works the same way as when resolving A<T1, ..>().

 #KT-6992 Fixed
 #KT-6993 Fixed
 #KT-6994 Fixed
2015-03-17 23:18:35 +03:00
Denis Zharkov e37cf6b6a1 Minor, change method contract to @NotNull 2015-03-17 23:18:35 +03:00
Denis Zharkov 52ba8333dc Refactor delegation call resolution
- Move resolution logic from BodyResolver to CallResolver
- Call resolveConstructorDelegationCall explicitly without resolveFunctionCall
- Drop dead condition and unused method
2015-03-17 23:18:35 +03:00
Denis Zharkov 9cecd69a9e Drop unneeded condition that leads to error
This check is obsolete but leads to problems.

It appears when resolving recursive calls (see sameTypeParameterUse.kt):

`foo<R>(x: R, y: R)` within call `foo<R>(x, "")` after substitution
has R as type of it's second argument, and when checking value arguments,
x is not checked because supposed to be dependent on type parameter of candidate
(that is effectively false), so there are two successful candidates
in resolution results and wrong OVERLOAD_RESOLUTION_AMBIGUITY error.
2015-03-17 23:18:34 +03:00
Denis Zharkov 682f8a3110 Use original constructor descriptor when searching cycles 2015-03-17 23:18:34 +03:00
Denis Zharkov 6c46606f2b Fix constructors redeclaration message
#KT-6966 Fixed
2015-03-17 23:18:34 +03:00
Denis Zharkov 22425de5cb Setup spacing rules for secondary constructors
#KT-6968 Fixed
2015-03-17 23:18:34 +03:00
Denis Zharkov 9e5192e0e3 Prohibit val/vars/modifiers on secondary constructor parameter
#KT-6962 Fixed
2015-03-17 23:18:33 +03:00
Nikolay Krasko 99fb75c943 Consider bundled library version to be plugin version without identifier parts 2015-03-17 20:44:18 +03:00
Zalim Bashorov 8054f18287 Minor in JS backend: add @Nullable to JsNameRef#getQualifier and JsNameRef#getSymbol. 2015-03-17 19:00:51 +03:00
Zalim Bashorov d6c70cc143 JS backend: added @Nullable to JsNameRef#getName and added assertion to get more information for reproduce #EA-66032 2015-03-17 19:00:50 +03:00
Zalim Bashorov 7d3094a0f1 JS backend: use FqNameUnsafe when generate delegateName to avoid problems with special names.
#EA-64029 Fixed
2015-03-17 19:00:50 +03:00
Pavel V. Talanov dfa8fbcb0d default -> companion: Replace missed default in error message 2015-03-17 18:26:59 +03:00
Yan Zhulanow e56d67f4b8 Android synthetic properties are now properties with flexible type 2015-03-17 17:37:14 +03:00
Yan Zhulanow 01c79c6d00 Make Android bytecode shape tests more readable 2015-03-17 17:35:24 +03:00
Yan Zhulanow 15f8ba811b Return moduleInfo UserDataProperty if it was explicitly set 2015-03-17 17:35:24 +03:00
Yan Zhulanow b04d14f79d Move plugin-related String constants to the object 2015-03-17 17:35:23 +03:00
Pavel V. Talanov a50b218c6a default -> companion: Replace some missed usages of "isDefault" 2015-03-17 17:10:53 +03:00
Evgeny Gerashchenko 3ec6ffc906 KT-7007 Go to declaration doesn't work inside enum class
#KT-7007 fixed
2015-03-17 16:10:51 +03:00
Pavel V. Talanov 94937a39be Increase ABI and stub versions 2015-03-17 15:52:41 +03:00
Pavel V. Talanov 06916d98c6 default -> companion: replace all mentions of default and default object 2015-03-17 15:47:39 +03:00
Pavel V. Talanov a0783757e8 Delete libraries/sandbox folder with old experimental stuff 2015-03-17 15:46:52 +03:00
Pavel V. Talanov 498bb89358 Delete docs folder with old confluence documentation and talks presentations 2015-03-17 15:46:52 +03:00
Pavel V. Talanov 2a6facaef6 default -> companion: default object -> class object in project code, builtins and libs code 2015-03-17 15:46:48 +03:00
Alexander Udalov 444b461ba7 Run preloader in new-kotlinc, fix reflect->runtime class-path reference 2015-03-17 15:46:47 +03:00
Dmitry Jemerov 9ea0c999fc quick doc: use check instead of assertion when getting descriptor for declaration (EA-62592) 2015-03-17 12:48:58 +01:00
Zalim Bashorov 5e782dd547 Switch to the new(right) API for register extension points and extensions. 2015-03-17 14:11:00 +03:00
Michael Bogdanov 11ce50f0d6 Tests for obsolete KT-6434: android compile error: local variable type mismatch
#KT-6434 Obsolete
2015-03-17 11:39:28 +03:00
Alexander Udalov 4b4f6a713a Implement "reflection not found" inspection and quick fix 2015-03-16 20:54:10 +03:00
Alexander Udalov 094fa2f92b Report error on using reflection without kotlin-reflect.jar in classpath
Should be a warning because strictly speaking, the codegen doesn't need it
during the compilation. It's an error at the moment only to let all clients of
Kotlin reflection know that they must include kotlin-reflect.jar in the
classpath
2015-03-16 20:40:49 +03:00
Alexander Udalov 9d6f4e99a1 Move reflection interfaces to module 'builtins'
They are considered to be built-ins everywhere anyway
2015-03-16 20:29:39 +03:00
Nikolay Krasko 48ce8d5270 Add additional logging for context and element (EA-64785) 2015-03-16 20:16:26 +03:00