Kevin Bourrillion
503e093af3
Change the compiler to view both old and new JSpecify packages equal
...
Compiler uses the single reporting level for both old/new JSpecify packages
2022-12-27 11:11:00 +00:00
Evgeniy.Zhelenskiy
fa4ceb4ef4
[IR] Add diagnostics to forbid annotations for MFVC-typed elements
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:39 +00:00
pyos
6c6d653e85
FE: don't lose annotations on Java primitive arrays
...
but only use them to enhance for warnings for now.
^KT-48861 Fixed
2022-10-26 09:33:40 +02:00
Alexander Udalov
87d3ce6ded
Write a copy of SMAP to a new annotation
...
To make it available for dynamically attached JVMTI agents.
`@SourceDebugExtension` annotation value is equal to the
SourceDebugExtension attribute value, which is checked now for all box
tests. The difference is that the annotation stored in the constant
pool, which is available for dynamically attached JVMTI agents.
#KT-53438 Fixed
2022-09-09 14:32:35 +02:00
Abduqodiri Qurbonzoda
34e50649e8
Switch JVM target of the standard libraries to 1.8 #KT-51907
2022-08-13 01:33:45 +03:00
Victor Petukhov
cb2dbca0c3
[FE 1.0] Support loading rxjava3 nullability annotations on bounded wildcards
...
^KT-53041 Fixed
2022-07-11 12:44:07 +00:00
Ilya Chernikov
bb996c1b27
Switch kotlin version to 1.8
...
with appropriate fixes in testdata, tests and other
places.
2022-06-29 10:20:30 +02:00
Dmitriy Novozhilov
26df9d74e8
[FE] Add flag to java model to distinguish source java classes from binaries
2022-06-07 14:12:23 +00:00
Jinseong Jeon
58c2433bdd
FIR LC: use unified annotations' ClassId (missed JvmName)
2022-05-24 20:32:55 +02:00
Yahor Berdnikau
af6f17c243
Unify kotlinCompilerClasspath for all projects
...
This will prevent spawning second Kotlin daemon during compilation
except 'buildSrc' compilation. Original change was introduced in
2e515f3945 commit.
2022-05-24 07:58:38 +00:00
Victor Petukhov
fbb2e18bea
[FE 1.0] Use 1.7.20 as default language version for java type enhancement
...
^KT-50478
2022-05-23 12:36:31 +02:00
Alexander Udalov
2e515f3945
Prohibit JVM target 1.6
...
But still compile stdlib, reflect, kotlin.test and scripting runtimes
with JVM target 1.6 to simplify migration from Kotlin 1.6 to 1.7.
#KT-45165 Fixed
2022-04-19 22:54:40 +02:00
Victor Petukhov
baedd285e8
[FE] Postpone enabling io.reactivex.rxjava3.annotations in the strict mode by default till 1.8
...
^KT-50845 Fixed
2022-04-19 11:58:37 +00:00
Ivan Kochurkin
e010f59560
Move JSPECIFY_ANNOTATIONS_PACKAGE to 1.8
2022-02-25 11:46:28 +00:00
Ilmir Usmanov
2fedb97d16
Correctly map nullable generic underlying value of inline class
...
if upper bound is primitive type.
#KT-32162
2022-02-15 08:11:17 +01:00
Ilmir Usmanov
a7e2f7a6b6
Map nullable type parameter with nullable inline class upper bound
...
which, in turn, has primitive or nullable underlying type to inline
class.
#KT-32162
2022-02-15 08:11:15 +01:00
Ilmir Usmanov
4f95171472
Minor. Add tests
2022-02-15 08:11:10 +01:00
Dmitriy Novozhilov
17916d4a63
[FE] Return Name? instead of List<Name> from getBuiltinFunctionNamesByJvmName
...
This is much more correct, because we have one to one mapping for
special java functions in this case, so using single nullable name
instead of list of names makes code more readable
2022-01-19 15:24:43 +03:00
Victor Petukhov
29f174f074
Revert "Revert "Temporary workaround for failing tests on teamcity.""
...
This reverts commit 2c51799e0a .
2021-12-27 22:56:01 +03:00
Victor Petukhov
2c51799e0a
Revert "Temporary workaround for failing tests on teamcity."
...
This reverts commit 2436ca3d8b .
2021-12-23 13:42:56 +03:00
Stanislav Erokhin
2436ca3d8b
Temporary workaround for failing tests on teamcity.
...
This commit should be reverted later with testdata update
2021-12-22 18:51:20 +01:00
Jinseong Jeon
82c2f0c6fd
FIR LC: use unified annotations' ClassId or FqName
2021-12-15 08:20:02 +03:00
Mikhail Glukhikh
533e802c8d
FIR: support JVM_DEFAULT_WITH_COMPATIBILITY_* diagnostics (FE 1.0 sync)
2021-12-09 13:26:40 +03:00
Mikhael Bogdanov
ea58c858d1
JvmDefault. Support @JvmDefaultWithCompatibility annotation
...
#KT-48217 Fixed
2021-12-06 14:20:24 +01:00
Dmitriy Novozhilov
01c0cf80d0
[FIR] Support @kotlin.jvm.PurelyImplements annotation
2021-11-22 17:01:17 +03:00
Tianyu Geng
8ba2e4d221
FIR: move JavaAnnotationMapper.javaToKotlinNameMap to common
...
so that FIR IDE logic can reference it
2021-11-04 20:52:50 +01:00
Victor Petukhov
d015d3bc0e
Don't enhance previously erased value parameters for jspecify strict mode
...
^KT-48261 Fixed
2021-10-26 19:37:55 +03:00
Denis.Zharkov
0bdea4f20a
FIR: Do not create incorrect synthetic property
2021-10-26 18:45:59 +03:00
Denis.Zharkov
fe1b4d61c2
Move some property convention helpers to compiler.common.jvm
...
Since it will be used in FIR, too
2021-10-26 18:45:58 +03:00
Georgy Bronnikov
41e38d5a1a
JVM_IR: move serialized IR to a separate annotation
2021-10-02 00:56:46 +03:00
Victor Petukhov
70d70b9042
Use warn mode by default for jspecify nullability annotations in 1.6
...
^KT-48851 Fixed
2021-09-30 20:08:35 +03:00
Denis.Zharkov
9ac29e0714
Fix enhancement when mixing TYPE_USE and non-TYPE_USE annotations
2021-09-28 22:59:18 +03:00
Denis.Zharkov
38fa900e56
FIR: Optimize case with no annotations on package
2021-09-23 16:58:26 +03:00
Dmitriy Novozhilov
9d09b9605f
[FIR] Cleanup and reorganize utils in :compiler:fir:java
2021-09-15 17:11:30 +03:00
Ilya Kirillov
a8d321db63
FIR IDE: do not use FE1.0 compiler jars in frontend-independent-modules
2021-09-14 14:45:43 +02:00
Dmitriy Novozhilov
5769d42248
[FIR] Fix all usages of annotations due to new FirAnnotation hierarchy
2021-09-13 13:53:12 +03:00
Ivan Kochurkin
8cdb79f969
Move JvmNames, JvmFieldApplicabilityProblem to common.jvm module
2021-09-10 00:49:10 +03:00
Ivan Kochurkin
69a13a3269
[FIR] Use getAnnotationByClassId instead of getAnnotationByFqName in JVM checkers
2021-09-10 00:49:09 +03:00
pyos
94402ba488
FE: prefer enhancements for errors over enhancements for warnings
2021-09-08 16:54:17 +03:00
pyos
afa1d18cc2
FE: in NullMarked scope, enhance T! to at least T
...
#KT-44436 Fixed
2021-09-08 16:54:17 +03:00
pyos
f793afbfea
FE: do not enhance ? into ? extends @NotNull Object in JSR-305
...
This is already done in jspecify and makes more sense anyway.
2021-09-08 16:54:17 +03:00
pyos
9ee0d6b60a
FE: don't use an experimental stdlib function
...
...for compatibility? idk.
2021-09-06 13:11:21 +03:00
pyos
0d78bcebca
FE: rename an extension to avoid conflicts with FIR member
2021-09-06 13:11:20 +03:00
pyos
476513fe96
FIR: rename type parameter: Annotation -> TAnnotation
2021-09-06 13:11:18 +03:00
pyos
090b90f62e
FIR: load type qualifiers from module, package, and parent classes
2021-09-06 13:11:13 +03:00
pyos
03304bce96
FIR: enhance Java type parameter bounds
...
This also fixes handling of self-recursive types.
TODO: fix jspecify/{strict,warn}Mode/Captured.fir.kt
2021-09-06 13:11:08 +03:00
pyos
c85329905c
FE: remove ? enhancement code that is never used
...
Using `starProjectionType` to enhance `?` is pointless because
1. we explicitly ignore nullability annotations for `?` below;
2. mutability is irrelevant;
3. `starProjectionType` never returns references to other type
parameters due to how the type substitutor works.
2021-09-06 13:11:01 +03:00
pyos
a8b09a2016
FE: extract FIR-reusable code from SignatureParts
2021-09-06 13:11:00 +03:00
pyos
b31925e6c9
FE: slowly refactor extractQualifiersFromAnnotations 3
2021-09-06 13:10:59 +03:00
pyos
8d39d155bb
FE/FIR: extract common code for mutability qualifiers
2021-09-06 13:10:57 +03:00