Ilya Chernikov
5e33612238
Extract interface from CompilerMessageLocation to ease extension
...
The CompilerMessageLocation is an implicit part of the binary daemon
protocol so changing it breaks compatibility with older daemons.
This change allows to extend location for non-daemon uses without
breaking the binary protocol.
2020-06-05 21:58:27 +02:00
Alexander Udalov
8a4510c21b
Regenerate tests
2020-01-02 10:31:00 +01:00
Dmitriy Novozhilov
e7f8c8e155
[TEST] Regenerate tests after previous commit
2019-12-12 16:11:45 +03:00
Alexander Udalov
fd627603a0
Refactor CompilationErrorHandler
...
It only had one implementation THROW_EXCEPTION, inline it everywhere
with a call to a static method
2019-12-03 10:48:34 +01:00
Kevin Bierhoff
0285b26e40
make FunctionCodegen skip method bodies we don't need, which avoids problems with inlining methods inside methods we don't need
...
KT-33604
2019-11-22 12:54:42 +03:00
Nikolay Krasko
4ed64b0283
Regenerate tests with TargetBackend.ANY remove and using runTest with this
2019-10-23 12:49:48 +03:00
Kevin Bierhoff
565099d941
fix new test name
2019-09-18 14:42:32 +03:00
Kevin Bierhoff
bc207ed8db
fix for KT-29471
...
#KT-29471 Fixed
2019-09-18 14:42:09 +03:00
Ilya Chernikov
0f41dc814f
Switch many common tasks defined in buildSrc to lazy creation
...
also refactor some locally defined tasks to the creation avoidance API
2019-08-21 20:20:08 +02:00
Ty Smith
e74a00789d
Add embeddable artifact for jvm-abi-gen
...
#KT-28824 Fixed
2019-07-30 20:47:56 +03:00
Vyacheslav Gerasimov
db3b01d2d4
Build: Centralize compiler dist build logic in :kotlin-compiler project
2019-06-27 17:56:48 +03:00
Vyacheslav Gerasimov
6cf5514f6e
Build: Fix jps import for jvm-abi-gen plugin
2019-06-27 17:56:47 +03:00
Vyacheslav Gerasimov
5a39c637c2
Build: Fix intellij dependency leak from ir tree module
2019-06-13 21:03:55 +03:00
Dmitry Gridin
37c856290f
Fix minor compile warnings
2019-04-25 19:47:39 +07:00
nikita.movshin
a636e3d57d
Update copyright.
...
Change the copyright from "JetBrains s.r.o." to
"JetBrains s.r.o. and Kotlin Project contributors"
2019-04-23 20:09:23 +03:00
nikita.movshin
65244b4bea
Update copyright.
...
Change the copyright from "JetBrains s.r.o." to
"JetBrains s.r.o. and Kotlin Project contributors"
Update only 2 lines copyright.
2019-04-23 20:09:22 +03:00
Mikhael Bogdanov
dde28ddc52
Parallelize compiler tests
2019-04-18 13:24:58 +02:00
Vyacheslav Gerasimov
a42f607ecf
Build: Fix artifacts signing for maven central
...
With gradle > 5.0 `publish()` helper call should be done before
`noDefaultJar()` or any other artifact hacks, otherwise singing plugin doesn't sign any jars
2019-02-27 13:21:17 +03:00
Mikhael Bogdanov
e963c52c80
Update copyright in generated non-compiler tests
2019-01-02 13:34:03 +01:00
Mikhael Bogdanov
f900d598c7
Inline ABI_EXTENSION_ASM_API_VERSION
2018-12-20 12:55:10 +01:00
Mikhael Bogdanov
c19c979b7d
Use last asm api for visitor construction
2018-12-20 12:55:09 +01:00
Alexey Tsvetkov
8aa069a774
Make AbstractJvmAbiContentTest system independent
2018-12-13 15:39:39 +03:00
Alexey Tsvetkov
01fbcfad23
Minor: replace UsefulTestCase with KtUsefulTestCase
...
For some reason assertSameLinesWithFile from UsefulTestCase
fails with exception on TeamCity, whereas the one KtUsefulTestCase
does not
2018-12-12 02:53:13 +03:00
Alexey Tsvetkov
57f8f216d1
Exclude local variables and try catch blocks of non-inline functions from ABI
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
495cfec9e9
Check descriptor visibility before excluding method from ABI class
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
34d96dff28
Minor: rename const according to style guide
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
b87058b532
Attempt to fix ABI tests on TC
...
Locally they work fine
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
09dbf427ee
Disable removing private/synthetic/local classes temporarily
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
96f3c67b3b
Report output classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
05c5196aaa
Reuse BytecodeListingTextCollectingVisitor in tests
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
497df17eb7
Reuse TransformationMethodVisitor in ABI gen plugin
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
50d8fe611c
Minor fixes after review
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
d54ce2da6f
Exclude nested classes of private classes from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
64380f55d2
Report locations of errors in ABI classes tests
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
9dd09151f0
Add tests for compilation against abi classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
8992ee6280
Add tests for non-compatible ABI changes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
5891617674
Exclude clinit from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
519211036d
Exclude synthetic classes from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
fe047a0092
Minor: extract function
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
f231817559
Delay I/O when transforming ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
d74185a74d
Remove unused cosntant pool entries from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
3a29b337a0
Exclude private typealiases from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
1f5ca7274d
Exclude local and private classes from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
7c2f7cab9a
Exclude non-inline method bodies from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
903f6bc79b
Exclude private members from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
33faa00184
Add plugin for JVM ABI classes generation
...
#KT-25128 Fixed
ABI class generation is implemented as a compiler plugin.
Command-line usage:
1. Add a path to 'jvm-abi-gen.jar' to the plguin classpath argument
(`-Xplugin`). By default the jar is located at
'kotlinc/lib/jvm-abi-gen.jar' in the kotlinc distribution archive.
2. Specify an output directory for ABI classes via
`-Pplugin:org.jetbrains.kotlin.jvm.abi:outputDir=<DIR>`.
2018-12-11 22:48:53 +03:00