Commit Graph

1915 Commits

Author SHA1 Message Date
Yan Zhulanow
bc727a170b Add 'operator' keyword 2015-09-23 21:25:51 +03:00
Michael Nedzelsky
2c952dcc22 Revert "add isKotlinSourceElement method to Source interface in order to recognize kotlin source elements during compilation"
This reverts commit c342f6870a.
2015-09-23 17:45:47 +03:00
Michael Nedzelsky
031a42ccf4 Revert "add isIncremental method to PackageFragmentDescriptorImpl in order to recognize descriptors from incremental package fragments during compilation"
This reverts commit ddaebd2b27.
2015-09-23 17:45:45 +03:00
Denis Zharkov
bde58d6eb8 Introduce interface method: VariableDescriptor.isConst
And several default implementations
Also take it into account in renderer
2015-09-23 08:20:56 +03:00
Michael Nedzelsky
ddaebd2b27 add isIncremental method to PackageFragmentDescriptorImpl in order to recognize descriptors from incremental package fragments during compilation 2015-09-23 07:49:23 +03:00
Michael Nedzelsky
c342f6870a add isKotlinSourceElement method to Source interface in order to recognize kotlin source elements during compilation 2015-09-23 07:49:21 +03:00
Alexander Udalov
0ef705f073 Minor, convert ClassData and PackageData to Kotlin data classes 2015-09-22 18:22:57 +03:00
Dmitry Jemerov
51ee1b3e5a do not cache binary contents when trying to check if a .class file is compiled with Kotlin 2015-09-22 15:08:28 +02:00
Dmitry Petrov
da026f1480 Report errors for annotations with BINARY or RUNTIME retention on file classes. 2015-09-21 12:11:53 +03:00
Denis Zharkov
f518348565 Revert "Support decapitilized obsolete annotations in resolve"
This reverts commit 4159c83282.
2015-09-18 10:14:37 +03:00
Denis Zharkov
9c4564a5a6 Get rid of deprecated annotations and modifiers in project code 2015-09-18 09:34:27 +03:00
Alexander Udalov
57c81e9cbe Disallow arrays as upper bounds of type parameters
#KT-9189 Fixed
2015-09-17 21:15:20 +03:00
Mikhail Glukhikh
65b77558a1 Data flow value converted to Kotlin 2015-09-16 16:56:45 +03:00
Alexander Udalov
2b269b2652 Improve ABI version error reporting in the compiler
- only report ABI errors if there's at least one other error
- append additional helpful information to the "unresolved reference" error
2015-09-16 01:44:27 +03:00
Dmitry Jemerov
9e6c0e7ee2 code review 2015-09-14 18:05:00 +02:00
Dmitry Jemerov
35de13a6b2 update Java references to file class when a file is renamed 2015-09-14 18:03:55 +02:00
Mikhail Glukhikh
67f714434f Error message on JVM repeated annotation changed 2015-09-14 16:20:07 +03:00
Dmitry Petrov
1586a2df8e Make stdlib work with -Xmultifile-package-facades.
Fixed wrong owner mapping in presence of -Xmultifile-package-facades.
Fixed backing field mapping issue.
Added more tests.
2015-09-14 11:26:29 +03:00
Dmitry Petrov
50f83da6da - call multifile class members (compiling against binaries)
- inline multifile class members
2015-09-14 11:25:42 +03:00
Dmitry Petrov
5f9a59d655 - bytecodeTextMultifile - framework for bytecode text tests
with multiple Kotlin source files
- bytecodeTextMultifile/partMembersCall, initial import
2015-09-14 11:25:42 +03:00
Dmitry Petrov
2931e474e1 - InnerClasses & EnclosingMethod attributes for local classes
in multifile part members
- invocation of multifile part/facade members
(TODO: deserialized descriptor case)
- inlining of multifile part/facade members
(TODO: inline against binaries case)
2015-09-14 11:25:41 +03:00
Nikolay Krasko
6faf3f1eba Fix deadlock in ReflectionAPICallChecker because of conflict in lazy() and storageManager 2015-09-12 15:16:10 +03:00
Alexander Udalov
6cecc66d10 Improve ABI version from one number to "major.minor.patch" 2015-09-11 19:28:46 +03:00
Alexander Udalov
3e5c8d1b79 Fix NPE on empty JVM name
#KT-9113 Fixed
2015-09-10 21:44:18 +03:00
Alexander Udalov
fb31980c0b Fix EA-68149 which happened on editing Scala sources 2015-09-10 21:44:16 +03:00
Dmitry Petrov
6850e9180e Effectively this is a return of "${facadeName}__${partName}" scheme.
Suggestions from @udalov:
- Make multifile class parts synthetic.
- Multifile class parts should have well-formed Java identifiers as names.
- Multifile class part names should contain facade name.
Add test with clashing part names.
Add test with local generic classes used in method signatures
(it works with parts names not being well-formed Java identifiers, though).

Capitalized annotations.
2015-09-10 18:03:34 +03:00
Pavel V. Talanov
e9c1df0cb9 J2K CliLightClassGenerationSupport: prettify 2015-09-09 21:21:51 +03:00
Pavel V. Talanov
cda35f609a Build light classes for file facades 2015-09-09 21:20:52 +03:00
Dmitry Petrov
0839d78797 Fix CodegenFileClassesProvider problems related to wrong/incomplete code in IDE 2015-09-09 19:08:19 +03:00
Dmitry Petrov
bf1c0260f1 Multifile class part names are "1${PartName}".
Multifile class parts are final.
2015-09-09 19:08:19 +03:00
Dmitry Petrov
cd341e957e Cleanup after review
+ stub builder test for multifile class
2015-09-09 19:08:19 +03:00
Dmitry Petrov
5e38c99f81 Name clash test for file class vs multifile class 2015-09-09 19:08:19 +03:00
Dmitry Petrov
b3421479f1 cleanup 2015-09-09 19:08:18 +03:00
Dmitry Petrov
879d7b1b24 workaround for NPE in proguard 2015-09-09 19:08:18 +03:00
Dmitry Petrov
a00346a141 MultifileClassCodegen
- initial implementation
- new Kotlin file kinds + stub builder
2015-09-09 19:08:17 +03:00
Mikhail Glukhikh
1dee922861 kotlin.annotation.Target / Retention have now more priority than same java classes if import java.lang.annotation.* is available 2015-09-08 17:18:31 +03:00
Dmitry Petrov
c18f87f0c7 Cleanup after review 2015-09-08 13:02:56 +03:00
Dmitry Petrov
bc5e29df9f update tests: jvmName --> JvmName 2015-09-08 13:02:56 +03:00
Dmitry Petrov
2519641b2b JvmName annotation support, single-file facade case (just rename file facade class)
- initial implementation of JvmFileClassesProvider
- migrate some of PackagePartClassUtil usages to JvmFileClassesProvider (mostly in Codegen)
- placeholder ("no resolve") implementation for migration period and unclear cases
- tests
2015-09-08 13:02:56 +03:00
Alexey Tsvetkov
12181d274b Remove InlineRegistering interface 2015-09-08 05:49:35 +03:00
Alexey Tsvetkov
7e515e3820 Use simple data class TargetId instead of Module to get incremental cache 2015-09-08 05:49:34 +03:00
Alexey Tsvetkov
ed5dcf2182 Simplify getting class file path for functions from current module 2015-09-08 05:49:33 +03:00
Alexey Tsvetkov
8cc2e0f68d Always use class file as inline fun source 2015-09-08 05:49:32 +03:00
Alexey Tsvetkov
f9fe01047d Fix incremental packages 2015-09-08 05:49:32 +03:00
Alexey Tsvetkov
0988b21e9c Use both target name and target type to get incremental cache from backend 2015-09-08 05:49:32 +03:00
Alexey Tsvetkov
e0419f956e Recompile only files that call changed inline functions 2015-09-08 05:49:30 +03:00
Alexey Tsvetkov
64cc75c1ba Save info about inlined calls to incremental caches 2015-09-08 05:49:29 +03:00
Michael Bogdanov
5805c42305 Write abi version to mapping file 2015-09-07 16:29:16 +03:00
Michael Bogdanov
466b535ba9 Get rid of DeserializedNewPackageMemberScope.kt 2015-09-07 16:29:13 +03:00
Zalim Bashorov
f48346f272 Introduce IncrementalPackagePartProvider to load unchanged compiled package parts using module mapping info from incremental cache 2015-09-07 16:29:07 +03:00