Alexey Tsvetkov
f2c69e56d2
Remove @annotation from stdlib and compiler
2015-10-19 20:45:00 +03:00
Alexey Tsvetkov
106e2667d4
Render data modifier
2015-10-19 20:45:00 +03:00
Alexey Tsvetkov
ec57d3f144
Remove @data from stdlib and compiler
2015-10-19 20:45:00 +03:00
Alexey Tsvetkov
264bd5235b
Add isData() to ClassDescriptor
2015-10-19 20:45:00 +03:00
Alexey Tsvetkov
1414fe1699
Add IS_DATA flag
2015-10-19 20:44:59 +03:00
Dmitry Petrov
621d26aeeb
Drop package facades: fix incremental compilation tests & proto comparison tests
...
(package facades are no longer generated)
2015-10-19 16:03:21 +03:00
Dmitry Petrov
f227908151
Drop package facades:
...
- update incremental compilation tests
2015-10-19 16:03:21 +03:00
Dmitry Petrov
70c91b2e75
Drop package facades:
...
- getting rid of package facades in InlineCodegen & related stuff.
Provide binary source element to top-level package members.
2015-10-19 16:03:20 +03:00
Dmitry Petrov
9de45f4c56
Dropping package facades:
...
- add @Deprecated kotlin.internal.InternalPackage to runtime
(for compatibility with older Kotlin code)
2015-10-19 16:03:19 +03:00
Dmitry Petrov
dc399ac46b
Drop package facades: get rid of isPackageClassFqName
2015-10-19 16:03:18 +03:00
Dmitry Petrov
d19ce49606
Dropping package facades:
...
- do not depend on package facade in LazyJavaPackageFragment
2015-10-19 16:03:16 +03:00
Dmitry Petrov
149e70aa07
Dropping package facades:
...
- light classes: do not generate light class for package facade
- drop package facades as multifile classes compilation mode support
- get rid of some additional package facade fqName usages
- update tests for light classes
2015-10-19 16:03:16 +03:00
Ilya Gorbunov
078d904d41
Deprecated ranges: relax errors to warnings.
2015-10-19 15:37:42 +03:00
Ilya Gorbunov
69dc6701cc
Deprecate Double, Float and Comparable range implementations.
2015-10-19 15:37:41 +03:00
Pavel V. Talanov
aeb4abe39d
Fix decompiled text for named companion object
...
Fix stub/ast mismatch for compiled named companion objects
Add tests
2015-10-19 15:27:49 +03:00
Mikhail Glukhikh
cae0388a57
Code cleanup: data deprecations and some effective visibility stuff
2015-10-19 15:24:22 +03:00
Alexander Udalov
a501878d60
Workaround circular dependency of KProperty1 and KClassImpl
...
This appeared after introduction of KProperty in delegated property convention
methods. If a KProperty1 instance is created while constructing a KClassImpl
instance before assigning the 'jClass' field, an NPE is thrown because the
constructor of that KProperty1 instance tries to lookup the declaring class of
the property, which in some case happens to be the exact KClassImpl we're
constructing. No test added because I was not able to reproduce the behavior in
an isolated environment
2015-10-19 15:20:20 +03:00
Svetlana Isakova
cb34498278
Check nullability in initial constraints
...
except constraints for receiver type (it can be accessed via safe call)
2015-10-19 14:15:06 +03:00
Svetlana Isakova
4c85b69c88
Report type inference error
...
when inference failed with 'NoInfer' annotation
2015-10-19 14:15:05 +03:00
Denis Zharkov
cc94acdabc
Do not load common for special properties from Java
...
I.e. do not treat getName in Java enum as override of Enum.name
2015-10-17 17:46:17 +03:00
Denis Zharkov
28c46b73f1
Rename some of builtin parameters
2015-10-17 17:46:16 +03:00
Denis Zharkov
d8ede6d03e
Transform Enum.values to property
2015-10-17 17:46:16 +03:00
Natalia Ukhorskaya
9168572b8c
Write local variable for inline function and inline argument
2015-10-17 17:02:55 +03:00
Yan Zhulanow
9ae3b0fa9c
Drop loading Java annotation methods as functions
2015-10-16 22:13:34 +03:00
Svetlana Isakova
25b40455ad
Serialize/deserialize annotations on type parameters
2015-10-16 21:58:47 +03:00
Svetlana Isakova
b7e2604bf2
Rename DeserializedTypeParameterDescriptor .java -> .kt
2015-10-16 21:58:47 +03:00
Svetlana Isakova
ded62686a0
Added 'LowPriorityInOverloadResolution' annotation
2015-10-16 21:58:46 +03:00
Svetlana Isakova
a6ec5cecc0
Added 'OnlyInputTypes' annotation
2015-10-16 21:58:46 +03:00
Svetlana Isakova
9b440345a1
Do not render @NoInfer, @Exact annotations
...
For now they are always not rendered,
but later they should be rendered in descriptors, but omitted in error messages
2015-10-16 21:58:45 +03:00
Svetlana Isakova
566e27788f
Moved @NoInfer, @Exact to internal package
2015-10-16 21:58:44 +03:00
Valentin Kipyatkov
41775bf8a0
Code refactoring
2015-10-16 19:06:34 +03:00
Denis Zharkov
032ba44070
Minor. Add optimization for getOverriddenBuiltinWithDifferentJvmName
2015-10-16 18:16:03 +03:00
Denis Zharkov
d335f71dfe
Generate special bridges for builtins with same name but different JVM descriptor
2015-10-16 18:16:02 +03:00
Denis Zharkov
978a4cfa3c
Minor. Refine naming for SpecialBuiltinMembers
2015-10-16 18:16:02 +03:00
Denis Zharkov
bd37a10677
Transform *Array.size to properties
2015-10-16 18:16:02 +03:00
Zalim Bashorov
79d38a6c8f
Report the error when a declaration in Kotlin accidentally overrides a static member from Java
2015-10-16 16:14:34 +03:00
Alexander Udalov
f62128bdcd
Fix protobuf extension API usages
...
"getExtension" returns default value when the requested extension is not
present, which is 0 for Int, which makes no sense for extensions like
methodImplClassName that are storing the number in the string table
2015-10-15 22:36:22 +03:00
Michael Nedzelsky
114d19e6d9
use MainFunctionDetector in order to check for main function
2015-10-15 19:24:45 +03:00
Alexander Udalov
32a9bddbf9
Increase ABI version after yet another change to binary format
2015-10-15 18:25:42 +03:00
Alexander Udalov
9eb2e16b94
Support strings directly in JVM string table
...
For small strings it may be beneficial to store them as is in the proto at one
point instead of in a class annotation, because each annotation argument in the
classfile has a constant overhead which may be significant for small strings
2015-10-15 18:25:41 +03:00
Alexander Udalov
4c21142648
Store type parameter names sometimes instead of ids
...
This helps to reuse instances of types when TypeTable is enabled in cases when
a file or a class contains a lot of functions with type parameters with the
same name (like Maps.kt in the stdlib with "Map<K, V>")
2015-10-15 18:25:40 +03:00
Alexander Udalov
82d2e623d3
Support a more optimized way of storing types in metadata
...
Together with almost every type now there's also an id which references a type
from a separate table. Storing such ids instead of Type messages will allow to
reduce the size of the metadata for files where types are used many times over
and over again. Currently only deserialization of such types is supported,
along with the former mechanism
2015-10-15 18:25:39 +03:00
Yan Zhulanow
d52f245cf7
Rename unary plus/minus in builtins and stdlib
2015-10-15 18:23:58 +03:00
Michael Nedzelsky
890ae3e914
Make single-file classes tolerant to having many main()'s
2015-10-15 15:46:26 +03:00
Dmitry Petrov
8cd624a58a
Drop package facades: code cleanup in Kotlin project.
2015-10-15 10:33:47 +03:00
Alexander Udalov
bd5f068454
Fix build after subtle change of Enum.name from function to property
2015-10-14 22:00:48 +03:00
Alexander Udalov
a6846b3967
Insert KProperty<*> when creating property delegate methods in IDE
2015-10-14 20:45:26 +03:00
Alexander Udalov
ec1b4776fe
Deprecate PropertyMetadata, use KProperty<*> for delegated properties instead
2015-10-14 20:45:25 +03:00
Alexander Udalov
3c74f48f91
Pass KProperty instances to property delegates
...
Inherit KProperty from PropertyMetadata, cache corresponding KProperty objects
instead of PropertyMetadataImpl objects, add support for properties with 2
receivers
2015-10-14 20:45:24 +03:00
Mikhail Glukhikh
4614e74e3f
isFromJavaOrBuiltins() is now public (compilation fix)
2015-10-14 20:40:34 +03:00