Mikhail Glukhikh
eed0f50c5d
Code cleanup: ConeAttributes
2021-01-23 10:56:43 +03:00
Mikhail Glukhikh
94e613dd01
FIR: support custom annotation-based type attributes
2021-01-23 10:56:42 +03:00
Alexander Udalov
221f44da5f
Fix warnings in stdlib/compiler/plugins/test code
2021-01-13 19:18:20 +01:00
Jinseong Jeon
d53354057a
FIR: build functional type for SAM with receiver properly
2021-01-12 10:33:55 +03:00
Jinseong Jeon
463d53ee5c
FIR: handle reference to property with invisible setter
2020-11-20 10:48:13 +03:00
Mikhail Glukhikh
b658e99f91
FIR Java: simplify flexible nullability manipulations
2020-11-18 13:06:47 +03:00
Jinseong Jeon
fc7f589caa
FIR Java: record Java types with flexible nullability
2020-11-18 13:06:46 +03:00
Denis Zharkov
ecb89a66be
FIR: Copy attributes when copying declaration
...
Otherwise they share FirDeclarationAttributes instance that might lead
to problems when modifying only one of them
2020-10-28 11:43:25 +03:00
Jinseong Jeon
46cc01602e
FIR2IR: add implicit NOT_NULL cast if needed
2020-10-22 10:51:20 +03:00
Dmitriy Novozhilov
0c0a8f9849
[FIR] Properly pass type attributes for inference of lambda with type variable as expected type
...
#KT-41989 Fixed
#KT-37317 Fixed
2020-09-29 10:17:42 +03:00
Dmitriy Novozhilov
b343d05e14
[FIR] Implement JvmTypeMapper based on cone types
2020-09-24 16:51:06 +03:00
Ilya Kirillov
a0337ec10d
FIR: fix invalid increasing inner array size in ArrayMapImpl
2020-09-23 21:43:56 +03:00
Dmitriy Novozhilov
57a57d10da
[FIR] Add rendering for attribites of cone types
2020-09-23 14:05:07 +03:00
Mikhail Glukhikh
aa897db132
[FIR] Introduce UnsafeVariance attribute (see KT-41792)
2020-09-14 18:08:29 +03:00
Mikhail Glukhikh
2f61a2f56f
[FIR] Provide correct comparison of captured types
2020-09-14 17:56:36 +03:00
Dmitriy Novozhilov
7f692be11e
[FIR] Properly detect callable reference type according conversions
2020-09-11 12:13:33 +03:00
Dmitriy Novozhilov
9beeb51227
[FIR] Implement fir-specific contract values and fix annotations serialization
2020-09-11 10:08:35 +03:00
Dmitriy Novozhilov
a05d6da43b
Move descriptor-independent Visibilities to common modules
2020-09-04 11:42:50 +03:00
Dmitriy Novozhilov
6ace4164ff
[FIR] Split TypeUtils from :resolve to :cones and :tree modules
2020-09-01 12:00:10 +03:00
Dmitriy Novozhilov
b21a0213df
[NI] Get rid of FE 1.0 types in AbstractTypeApproximator
2020-08-28 10:59:51 +03:00
Mikhail Glukhikh
5702fb3b22
FIR: fix CCE in AttributeArrayOwner
2020-08-25 19:29:59 +03:00
Dmitriy Novozhilov
bc1b6d3588
Rename :core:descriptors.common to :core:compiler.common
2020-08-25 10:41:34 +03:00
Dmitriy Novozhilov
e92caae609
[FIR] Remove dependency on :core:descriptors from :compiler:fir:cones
2020-08-25 10:31:36 +03:00
Dmitriy Novozhilov
20a2ad8223
Move FunctionClassDescriptor.Kind to :core:descriptors.common module
2020-08-25 10:31:36 +03:00
Dmitriy Novozhilov
18ae593700
[FIR] Rename new visibilities to CamelCase
...
It's more convenient since they are objects now instead of
const fields in FE 1.0
2020-08-25 10:31:35 +03:00
Dmitriy Novozhilov
43821b681c
[FIR] Introduce new Visibility class which not depends on descriptors
2020-08-25 10:31:35 +03:00
Denis Zharkov
9ac5dd2bce
FIR: Use lookup tags for as type constructors instead of symbols
...
It may help to avoid redundant symbols lookups
2020-08-21 12:50:33 +03:00
Ilya Kirillov
b41a5f9f34
FIR: make TypeRegistry thread safe
2020-08-09 12:04:26 +03:00
Mikhail Glukhikh
0804c6a0f3
[FIR] Introduce TYPE_ARGUMENTS_NOT_ALLOWED & some other type errors
...
This commit introduces several different things, in particular:
- check type arguments in expressions
- new TypeArgumentList node to deal with diagnostic source
- ConeDiagnostic was moved to fir:cones
- ConeIntermediateDiagnostic to use in inference (?) without reporting
- detailed diagnostics on error type
2020-08-02 18:19:44 +03:00
Dmitriy Novozhilov
cedd1c133e
[FIR] Match type in super<type> access with actual supertypes of class
2020-07-20 14:38:16 +03:00
Dmitriy Novozhilov
102c9c08d0
[FIR] Resolve elvis call as special synthetic call
...
Before that commit we desugared `a ?: b` as
when (val elvis = a) {
null -> b
else -> elvis
}
It was incorrect, because `a` should be resolved in dependent mode,
but when it was `elvis` initializer it was resolved in independent
mode, so we can't infer type for `a` in some complex cases
2020-07-02 15:10:51 +03:00
Dmitriy Novozhilov
309050d956
[FIR] Add ExtensionFunctionType attribute
...
#KT-39034 Fixed
2020-06-30 11:30:19 +03:00
Dmitriy Novozhilov
cfa250957a
[FIR] Fix creating type attributes for intersection types
2020-06-30 11:30:18 +03:00
Dmitriy Novozhilov
dbbb999952
[FIR] Support builder (coroutine) inference
...
#KT-37431 Fixed
2020-06-29 12:19:02 +03:00
Dmitriy Novozhilov
de1b5cd056
[FIR] Add extracting @Exact and @NoInfer attributes from annotations
...
(cherry picked from commit e4c8c14e3e )
2020-06-29 12:19:01 +03:00
Dmitriy Novozhilov
7ab3dd04a0
[FIR] Add attributes for @Exact and @NoInfer
...
(cherry picked from commit e43932f147 )
2020-06-29 12:19:01 +03:00
Dmitriy Novozhilov
ac51e5dbd1
[FIR] Add workaround for KT-19306
2020-06-29 12:19:00 +03:00
Dmitriy Novozhilov
3f5db6b86e
[FIR] Add ConeAttributes to ConeKotlinType
...
(cherry picked from commit f76befa84e )
2020-06-29 12:19:00 +03:00
Dmitriy Novozhilov
e76f3f93f6
[FIR] Move ArrayMap to cones module
...
(cherry picked from commit 407d1365bd )
2020-06-29 12:19:00 +03:00
Dmitriy Novozhilov
7ea17f0d31
Revert "[FIR] Move ArrayMap to cones module"
...
This reverts commit 407d1365
2020-06-26 11:47:20 +03:00
Dmitriy Novozhilov
0b29a3e5c1
Revert "[FIR] Add ConeAttributes to ConeKotlinType"
...
This reverts commit f76befa8
2020-06-26 11:47:08 +03:00
Dmitriy Novozhilov
76550d3c5d
Revert "[FIR] Add attributes for @Exact and @NoInfer"
...
This reverts commit e43932f1
2020-06-26 11:46:59 +03:00
Dmitriy Novozhilov
c0634217e1
Revert "[FIR] Add extracting @Exact and @NoInfer attributes from annotations"
...
This reverts commit e4c8c14e
2020-06-26 11:46:50 +03:00
Dmitriy Novozhilov
e4c8c14e3e
[FIR] Add extracting @Exact and @NoInfer attributes from annotations
2020-06-26 10:54:51 +03:00
Dmitriy Novozhilov
e43932f147
[FIR] Add attributes for @Exact and @NoInfer
2020-06-26 10:54:51 +03:00
Dmitriy Novozhilov
f76befa84e
[FIR] Add ConeAttributes to ConeKotlinType
2020-06-26 10:54:51 +03:00
Dmitriy Novozhilov
407d1365bd
[FIR] Move ArrayMap to cones module
2020-06-26 10:54:50 +03:00
Denis Zharkov
e7a67c7a16
FIR: Extract StandardClassIds.KClass
2020-05-15 16:04:44 +03:00
Denis Zharkov
64eeedd21a
FIR: Minor. Add some minor fixes and clarifications to CallableId
2020-04-21 10:16:44 +03:00
Denis Zharkov
65e444a39c
FIR: Properly support local functions in DEBUG_INFO_CALL
2020-04-21 09:48:03 +03:00