Denis Zharkov
751f66c656
Report warning on generic type as argument for reified parameter
...
#KT-6484 Fixed
2016-01-22 19:17:22 +03:00
Denis Zharkov
5baa0ed4bb
Minor. Rename TypeUtils.containsSpecialType -> contains
2016-01-22 19:17:22 +03:00
Denis Zharkov
a5c13ce8cf
Approximate projections in SAM type when creating SAM adapter
...
Use the same approach as Java 8 applies to function types
(see non-wildcard parametrization in §9.9 of JLS)
#KT-6918 Fixed
2016-01-22 19:17:22 +03:00
Denis Zharkov
d87b13931d
Create special type for missing dependencies when resolving annotations
...
#KT-10748 Fixed
2016-01-22 19:17:22 +03:00
Michael Bogdanov
829978a37d
Added additional parameter for default methods
2016-01-22 10:10:32 +03:00
Ilya Gorbunov
4d5ec9be3f
Drop identityEquals from builtins, compiler and tests.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
2a125ca92d
Drop deprecated builtins: PropertyMetadata, progression internal utils, HiddenDeclaration and Extension annotations
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
91f4cf0ebc
Drop Progression<T> and its deprecated properties: start, end, increment.
...
Drop deprecated range extensions.
Make progression constructors private.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
6dd8470835
Drop deprecated primitive ranges and progressions: for Byte and Short
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
e8621cb738
Drop Range<T> interface and its extensions.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
1129cee0ff
Collect nested classes from all 4 builtin packages.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
e500e4bdf4
Obtain purely implemented interface class descriptor by its fq-name.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
e485bd4909
Fix mutability-flexible types rendering.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
83ef48d0ac
Refer to builtin names in HeuristicSignatures and j2k TypeVisitor
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
346291af7b
Use fq-names from KotlinBuiltins.FQ_NAMES instead of hardcoded ones.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
9c0f0cad70
Packages: move collections to kotlin.collections.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
9fbbc9db98
Packages: move Ranges, Progression, ProgressionIterators to kotlin.ranges and PrimitiveIterators to kotlin.collections.
2016-01-22 05:54:38 +03:00
Alexander Udalov
0b7d2e3a68
Do not write old callable proto flags, use only new ones
2016-01-22 05:51:14 +03:00
Valentin Kipyatkov
84e530bc1a
KT-6079 Show "parameter information" popup for type arguments
...
#KT-6079 Fixed
2016-01-21 19:07:39 +03:00
Denis Zharkov
06fbc9bdd3
Support reification of arrays containing reified parameters
...
#KT-10555 Fixed
2016-01-20 14:27:53 +03:00
Alexander Udalov
e2f49536f5
Move OldPackageFacadeClassUtils to module light-classes
2016-01-19 18:54:08 +03:00
Alexander Udalov
c78bf6c807
Set bytecode version to 1.0.0
...
It was 1.0.2 only because it was introduced as a clone of the metadata version,
which is 1.0.2 at the moment
2016-01-19 18:43:07 +03:00
Alexander Udalov
27dbfc7aef
Rethrow InvalidProtocolBufferException with class file location info
2016-01-19 18:39:59 +03:00
Alexander Udalov
4d93d18af7
J2K DeserializedDescriptorResolver: prettify
2016-01-19 18:39:59 +03:00
Alexander Udalov
3efa51af40
J2K DeserializedDescriptorResolver: convert
2016-01-19 18:39:59 +03:00
Alexander Udalov
432d458c02
J2K DeserializedDescriptorResolver: rename .java -> .kt
2016-01-19 18:39:59 +03:00
Alexander Udalov
b216ed99b4
Simplify UTF-8 decoding, just trivially convert bytes to 16-bit Unicode
...
ASM will do the rest (see ByteVector#encodeUTF8)
2016-01-19 18:39:59 +03:00
Alexander Udalov
9620893fa4
Drop synthetic class kind Function, drop Metadata#xi
2016-01-19 18:39:59 +03:00
Alexander Udalov
aef6d49b48
Drop isLocalClass, do not write KotlinLocalClass
2016-01-19 18:39:59 +03:00
Alexander Udalov
4bd1d064bb
Do not load built-ins in old format, drop class_name extension
2016-01-19 18:39:59 +03:00
Alexander Udalov
625c46d568
Delete obsolete and unused class_annotation JVM proto extension
2016-01-19 18:39:59 +03:00
Alexander Udalov
6dbd29e6a4
Support decoding of both old and new encoded metadata
2016-01-19 18:39:59 +03:00
Alexander Udalov
5585c7da7f
Minor, simplify utfEncoding, add option to force using 8to7 encoding
2016-01-19 18:39:59 +03:00
Andrey Breslav
fe15984a59
Direct encoding into UTF-8 bytes, without the 8-to-7-bit conversion
2016-01-19 18:39:59 +03:00
Alexander Udalov
693a9c9453
Write new flags to proto messages for callables
...
This is needed to get rid of two unused bits: Flags.RESERVED_1 and
Flags.RESERVED_2. The old flags are still there temporarily because of the
bootstrap dependency on built-ins. Soon the old flags will be dropped and the
current flags will be transformed to the new format
2016-01-19 18:39:59 +03:00
Alexander Udalov
a4daa08e5c
Write module name as proto extension instead of another annotation argument
2016-01-19 18:39:59 +03:00
Alexander Udalov
d4c4515944
Refactor BinaryVersion and subclasses, get rid of static factories
2016-01-19 18:39:59 +03:00
Alexander Udalov
e37bd4eba6
Do not write and read KotlinInterfaceDefaultImpls
...
This was only used in InlineTestUtil.kt and had no effect in the condition
2016-01-19 18:39:59 +03:00
Alexander Udalov
7906ac63b5
Read Metadata annotation, support option to ignore old annotations
2016-01-19 18:39:59 +03:00
Alexander Udalov
59dab0a558
Combine all metadata annotations into one kotlin/Metadata
2016-01-19 18:39:59 +03:00
Alexander Udalov
661af854fa
Drop KotlinClassHeader#filePartClassNames, use 'data' instead
2016-01-19 18:39:59 +03:00
Alexander Udalov
b587d3a78d
Use JvmMetadataVersion where appropriate instead of bytecode version
2016-01-19 18:39:59 +03:00
Alexander Udalov
bd47e9d47b
Split JVM binary version into two: metadata and bytecode interface
...
Currently all code only uses the first one (JvmMetadataVersion), later the
bytecode interface version (JvmBytecodeBinaryVersion) will be used only in
codegen and reflection to avoid compiling against or calling methods with
unsupported conventions like default method naming and signature,
getters/setters naming etc.
2016-01-19 18:39:59 +03:00
Alexander Udalov
fc88a0186f
Drop obsolete synthetic class kind in KotlinClassHeader
2016-01-19 18:39:59 +03:00
Alexander Udalov
9552accaec
Introduce BinaryVersion.isCompatible()
...
To decrease the chance to mix up the receiver and the first argument when
checking version compatibility
2016-01-19 18:39:59 +03:00
Alexander Udalov
04d335db15
Move version constants to corresponding BinaryVersion subclasses
2016-01-19 18:39:59 +03:00
Alexander Udalov
2f64680b63
Add several subclasses of BinaryVersion
...
To simplify comparison of expected vs actual versions in the future
2016-01-19 18:39:59 +03:00
Mikhail Glukhikh
7f2624c9a1
Handling of annotations on delegated property in descriptor loader & stub builder
2016-01-19 11:38:58 +03:00
Mikhail Glukhikh
ec909d0775
Volatile forbidden for delegated properties (and checked for other use-site targets)
2016-01-19 11:38:45 +03:00
Mikhail Glukhikh
b78d481bb1
delegate use-site targeted annotations: parser, front-end, codegen with some tests #KT-10502 Fixed
2016-01-19 11:38:41 +03:00