Dmitriy Novozhilov
f26059a7d3
[FE] Add clear warning about future changes about nullability of safe call with non nullable receiver
...
^KT-46860
2021-10-27 16:28:37 +03:00
Victor Petukhov
e0a4704c21
Revert "Make freshly substituted type variables def not nullable if they come from not null type parameter"
...
This reverts commit 41936a790b37bef45d7e7dad851856ea1750ef01.
2021-10-26 19:37:58 +03:00
Victor Petukhov
836c6b280d
Make freshly substituted type variables def not nullable if they come from not null type parameter
...
^KT-48778 Fixed
2021-10-26 19:37:57 +03: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
Victor Petukhov
b957831683
Use WarningAwareUpperBoundChecker independently
...
^KT-47920 Fixed
^KT-48290 Fixed
2021-09-30 20:08:58 +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
f7ef551f99
Report warnings on overrides with wrong types nullability
...
^KT-48899 Fixed
2021-09-30 14:36:26 +03:00
Denis.Zharkov
9ac29e0714
Fix enhancement when mixing TYPE_USE and non-TYPE_USE annotations
2021-09-28 22:59:18 +03:00
pyos
94402ba488
FE: prefer enhancements for errors over enhancements for warnings
2021-09-08 16:54:17 +03:00
pyos
8f699248f1
FE: force flexibility on unannotated ?
...
TODO: unify this code with FIR
#KT-48515 Fixed
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
9bb7a29baa
FIR: disregard enhancements for warnings
...
Warnings are not implemented yet, so don't produce errors either.
2021-09-06 13:11:16 +03:00
pyos
2847de10ac
FIR: enhance Java super types
2021-09-06 13:11:09 +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
e2a48d3945
FIR: use frontend-independent Java type qualifier computation
2021-09-06 13:11:07 +03:00
pyos
5704dffdbe
FIR: attach annotations to Java-converted cone types
2021-09-06 13:11:03 +03:00
pyos
5355d04553
FIR: enhance in/out-variant type arguments
2021-09-06 13:11:03 +03:00
pyos
8e122397b0
FIR: fix type index computation during enhancement
...
1. in/out type parameters count;
2. star projections take up 1 space in the tree.
2021-09-06 13:11:02 +03:00
Denis.Zharkov
4a9d4ed9fe
Enable ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated since 1.7
...
^KT-36770 Fixed
2021-08-31 15:41:17 +03:00
Denis.Zharkov
62bef48f9d
Adjust test data to changed rendering: T!! -> T & Any
...
^KT-26245 In Progress
2021-08-31 15:41:15 +03:00
pyos
47d0211370
FE: do not enhance ? in jspecify NullMarked scope
...
No clue whether this should be done for `@TypeQualifierDefault` since it
appears to have no specification whatsoever.
#KT-48262 Fixed
2021-08-18 16:41:00 +03:00
Mikhail Glukhikh
dd3eb53904
Drop forgotten foreign annotation test data
2021-08-12 14:25:18 +03:00
pyos
623b289616
Regenerate foreign annotation test data for FIR
2021-08-11 15:58:02 +03:00
pyos
33251f6d50
Generate foreign annotation test data for FIR
2021-08-10 13:19:23 +03:00
pyos
e2e0358505
Remove "FIR" foreign annotation tests
...
They do not actually use FIR.
2021-08-10 13:19:21 +03:00
Victor Petukhov
3eaa452f9e
Take into account SimpleTypeWithEnhancement and subtyping related places
...
^KT-47854 Fixed
2021-08-04 17:36:50 +03:00
Dmitriy Novozhilov
d17f984edf
[FE 1.0] Migrate most of warning/error pairs to DiagnosticFactoryForDeprecation
2021-08-03 00:17:33 +03:00
Mikhael Bogdanov
cdbd0eb932
Reopen KT-47920 test and add missed .txt files
...
#KT-47920 Open
2021-07-29 19:52:59 +02:00
Denis.Zharkov
8f484fcf88
Fix propagation of definitelyNotNull types from overrides
2021-07-29 19:45:57 +02:00
Denis.Zharkov
f34726ff91
Fix test data for ForeignAnnotations
2021-07-29 19:45:56 +02:00
Victor Petukhov
f84adcb378
[FE 1.0] Fix some foreign annotation tests
2021-07-29 19:45:56 +02:00
pyos
c401582770
FE: do not wrap types with enhancements if they're the same
2021-07-29 14:52:51 +03:00
Victor Petukhov
5684b6977a
Do preparation of enhancement as well (for types with enhancement), during subtype checks
...
^KT-47899 Fixed
2021-07-29 14:23:56 +03:00
Victor Petukhov
c5d783596d
Check type parameter bounds by java nullability annotations not only in basic resolution context
...
^KT-47920 Fixed
2021-07-29 14:23:55 +03:00
Victor Petukhov
f9cb0d61a8
Don't apply Java defaulting nullability annotations rules to unbounded wildcards
...
^KT-47396 Fixed
2021-07-29 14:23:53 +03:00
Victor Petukhov
99491014e4
Prefer flexible nullability by Java annotations to nullable one if the corresponding type parameter has nullable bound
...
^KT-47422 Fixed
2021-07-29 14:23:52 +03:00
pyos
d00fba3718
FE: avoid stack overflow on star projection of enhanced type parameter
...
#KT-47846 Fixed
2021-07-23 10:03:57 +03:00
Victor Petukhov
6cfb1f40d6
Specify jspecify mode explicitly for warnings in tests
2021-07-06 09:54:32 +03:00
Victor Petukhov
f92ab691f8
Add explicit enabling of TypeEnhancementImprovementsInStrictMode in jspecify tests
2021-07-06 09:54:26 +03:00
Victor Petukhov
54b9f39b3a
Update tests after rebase
2021-05-28 15:36:24 +03:00
Victor Petukhov
bd7fb56a24
Fix builder inference tests
2021-05-28 15:36:23 +03:00
Denis.Zharkov
2ecba6ac39
Remove WITH_NEW_INFERENCE directive from all tests
...
This directive anyway does not make test run twice with OI, and with NI
It only once run the test with specific settings (// LANGUAGE)
and ignores irrelevant (OI or NI tags)
2021-05-25 13:28:26 +03:00
Victor Petukhov
b78c645fb0
Report warnings by enhanced base types
2021-05-18 17:52:39 +03:00
Victor Petukhov
cba221c18a
Add test for enhancement in usages of annotated type parameter
2021-05-18 17:52:21 +03:00
Victor Petukhov
fd6475c804
Update tests
2021-05-18 17:52:19 +03:00
Victor Petukhov
8602d1fcf0
Merge foreign annotation tests for sources and binaries into single directory
2021-05-18 17:52:16 +03:00
Victor Petukhov
df2c95e444
[Jspecify] Use bounds of type parameters for warnings reporting as well
2021-05-18 17:52:14 +03:00
Victor Petukhov
0c4cba549d
[Jspecify] Use arguments of enhancement of type instead of arguments of base type during getting enhancement of type deeply
2021-05-18 17:52:12 +03:00
Victor Petukhov
21dada4d2d
[Jspecify] Use enhancement of type with enhancement if possible during substitution
2021-05-18 17:52:10 +03:00