Mikhail Zarechenskiy
8206cadce2
FIC: support fun interfaces in stub builder
2020-01-17 19:36:12 +03:00
Mikhael Bogdanov
d2a205c72d
Update synthetic parameter processing logic according to ASM 7 changes
...
#KT-27774 Fixed
2018-11-07 15:42:57 +01:00
Nikolay Krasko
ac97075020
Check only one class in JS decompiler tests to reuse test data
...
JVM tests check only single class result, in order to reuse test data
JS tests should do the same. CHECK_PACKAGE is introduced to override
this behaviour explicitly.
2018-04-24 18:51:27 +03:00
Zalim Bashorov
09d5a0cb89
Fix usages of IGNORE_BACKEND_WITHOUT_CHECK
2018-04-19 13:17:28 +03:00
Alexander Udalov
b5fef84e9c
Update tests on decompiled text for JS
...
Because .kjsm files now contain all declarations from the package (contrary to
the JVM decompiler which produces one file for one class/package facade), some
common decompiled text tests started to behave differently on JVM and JS.
Update two of them (Modifiers, ClassWithClassObject) to make results the same,
copy another (TypeAliases) to JVM-/JS-specific tests with different outputs
2017-01-30 11:31:02 +03:00
Dmitry Petrov
80bd916f5d
'SuspendFunction$n' should not be visible in member scopes (should be unresolved).
...
'SuspendFunction$n' class descriptors are created on demand by KotlinBuiltIns (and cached).
On serialization, types constructed with 'SuspendFunction$n' are written as 'Function$n' with extra flag (SUSPEND_TYPE).
On deserialization, corresponding 'SuspendFunction$n' classes are used.
2016-12-15 23:58:05 +03:00
Dmitry Petrov
f415050913
Suppress TOPLEVEL_TYPEALIASES_ONLY in decompiler and stubBuilder tests.
2016-11-24 10:41:50 +03:00
Zalim Bashorov
af4ec9815b
Add ability to ignore test for backend w/o checks
...
It used for the tests from this commit becouse they was failing during setup.
2016-11-09 21:41:12 +03:00
Anton Bannykh
7ee3baa020
Replaced when appropriate 'TARGET_BACKEND: JVM' -> 'IGNORE_BACKEND: JS'. Enabled some succesfully working decompiledText tests.
2016-10-27 14:17:25 +03:00
Dmitry Petrov
d2d8f72ffc
Annotations on type aliases: typealias is not a "default target".
...
Add diagnostic test for annotations on type aliases.
2016-10-13 17:52:21 +03:00
Pavel V. Talanov
14f3e4c758
Cls stubs and decompiled text: Do not render parameter names in decompiled text and do not load ParameterName annotation in stubs
...
Add tests for decompiled text and stubs
2016-10-11 23:38:53 +03:00
Denis Zharkov
86c1dbe7b5
Fix decompilation of types based on local classifiers
...
If deserializing a type with arguments based on a local class for
decompiler, then just return Any type (without arguments).
Previously Any constructor was used with serialized arguments, that lead
to exception
Note that in case of deserialization for compiler nothing changes about
local-classes-based types (LocalClassifierResolverImpl is just inlined)
#KT-13408 Fixed
2016-09-05 17:54:36 +03:00
Denis Zharkov
d53c53a900
Support annotations on type aliases declarations
2016-06-28 10:33:29 +03:00
Denis Zharkov
e24f0653fb
Support type aliases in stub builder
2016-06-28 10:33:29 +03:00
Denis Zharkov
067fe35b72
Fix type deserialization failure when type alias was not found
...
It's crucial for decompilation as declarations are always being deserialized
with no dependencies
#KT-12832 Fixed
2016-06-28 10:33:29 +03:00
Denis Zharkov
329fb9d619
Introduce 'coroutine'/'suspend' modifiers
2016-06-08 18:53:16 +03:00
Ilya Gorbunov
f4822cd757
Fix testData in compiler: add collections and ranges package to fq-names.
2016-01-22 05:54:38 +03:00
Alexander Udalov
7449ad2763
Rename Extension annotation to ExtensionFunctionType
...
The old one is kept temporarily and will be removed later
2015-12-21 20:33:32 +03:00
Alexander Udalov
65c5c99c68
Render decompiled annotations on enum entries
2015-12-13 17:49:44 +03:00
Alexander Udalov
5fbb9bfe3b
Report error on repeated upper bounds for type parameters
2015-12-07 15:47:47 +03:00
Alexander Udalov
877129340f
Revert "Rename Extension annotation to ExtensionFunctionType"
...
This reverts commit 460dad135c .
The old compiler will not see the new runtime correctly. Postponing this until
1.0
2015-11-30 19:24:58 +03:00
Alexander Udalov
460dad135c
Rename Extension annotation to ExtensionFunctionType
2015-11-30 02:51:04 +03:00
Denis Zharkov
6ae653e5a1
Implement stub building for inner types
2015-11-13 14:59:04 +03:00
Alexey Tsvetkov
5e90bafe18
Build stubs for modifiers
2015-10-19 20:45:02 +03:00
Alexey Tsvetkov
28ca2e8b84
Build stubs for data modifier
2015-10-19 20:45:00 +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
a4af6a3076
data deprecations (empty constructors, non val/var arguments, vararg, superclasses) are now errors, relevant tests fixed
2015-10-19 15:24:28 +03:00
Svetlana Isakova
9b1030de2e
Annotations on type projection belong to type reference
2015-10-09 11:05:52 +03:00
Denis Zharkov
e1e3a6c9ad
Introduce const into decompiler and stub builder
2015-09-23 08:20:57 +03:00
Valentin Kipyatkov
452cd49c5e
Disallowed @Deprecated for local variables and parameters
2015-09-18 15:44:16 +03:00
Denis Zharkov
7ea7e3cc7c
Render '@' before each annotation
2015-09-18 10:14:38 +03:00
Denis Zharkov
bae3320d52
Get rid of deprecated annotations in testData
2015-09-18 10:14:32 +03:00
Mikhail Glukhikh
3770e7f49f
Introduction of AnnotationTarget.CLASS as a replacement for CLASSIFIER (first step)
2015-09-11 17:59:40 +03:00
Denis Zharkov
fc447e2d2f
Parse some builtin annotations as modifiers
...
But still resolve them as annotations.
Mostly it's needed as begin of migration path, one day they become modifiers anyway
Some tests are dropped because they supposed that `annotation` should have parameter
2015-09-08 08:53:35 +03:00
Michael Nedzelsky
c861b036a0
fix tests in org.jetbrains.kotlin.idea.decompiler.textBuilder
2015-09-08 02:05:30 +03:00
Dmitry Petrov
f9901f6075
Fix decompiler tests.
...
For now, JVM and JS backends produce different metadata for package facades (and package parts),
and thus different output is expected for JVM and JS decompiler.
Split decompiler tests into common (decompiledText), JVM-specific (decompiledTextJvm),
and JS-specific (decompiledTextJs)
Join them back together if JS backend migrates to JVM-like package model.
2015-09-07 16:29:01 +03:00
Mikhail Glukhikh
8f7b29f80a
Annotation rename: target --> @Target
2015-09-07 13:42:26 +03:00
Denis Zharkov
31244edec9
Deprecate deprecated in favor of Deprecated
2015-09-04 18:19:31 +03:00
Denis Zharkov
11fed1674e
Deprecate extension annotation in favor of Extension
2015-09-04 17:23:25 +03:00
Michael Nedzelsky
be2324031d
decompiled text: add test for inherited interface
2015-09-01 15:06:45 +03:00
Mikhail Glukhikh
3793d99b00
Decompiler fix: enum entries are now separated by , and have ; at the end, relevant tests fixed
2015-08-11 10:37:48 +03:00
Mikhail Glukhikh
022e7d1169
Deprecated enum syntax removed: most idea tests
2015-08-10 16:24:16 +03:00
Mikhail Glukhikh
0d2a81f098
Annotation target checking in front-end, a set of tests for different annotation targets, existing test fixes
...
No checks for erroneous annotations. Additional checks for identifiers.
2015-07-14 16:25:04 +03:00
Pavel V. Talanov
9a9d70fd98
Decompiler: do not try to render function types with star projections prettily
2015-07-01 20:45:32 +03:00
Denis Zharkov
c9f79c2d05
Adjust testData: get rid of obsolete annotations
2015-06-12 09:23:31 +03:00
Pavel V. Talanov
d2592e4a2c
Companion objects have public visibility by default
...
#KT-7114 Fixed
2015-06-02 16:23:03 +03:00
Michael Nedzelsky
c362db7330
tests for decompiled texts: AssertionError -> RuntimeException
2015-05-26 05:04:49 +03:00
Michael Nedzelsky
a0dc22b464
add TARGET_BACKEND: JVM to some decompiled tests
2015-05-26 05:04:44 +03:00
Denis Zharkov
5297b4974f
Adjust descriptor renderer to latest parsing changes
...
- `constructor` keyword expected in primary constructor with non-empty modifier list
- annotation list should be preceeded by '@'
2015-05-20 09:24:56 +03:00
Mikhail Glukhikh
67cce57aeb
Decompiler & stub builder fixed accordingly with new enum syntax.
...
Companion object now directly follows enum entries to avoid having them at the middle.
Some decompiler & stub builder tests fixed accordingly.
2015-05-15 16:13:29 +03:00