-
Notifications
You must be signed in to change notification settings - Fork 744
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: Missing Distinct Qualifier in ObjectTypeSymbol #40619
Comments
@LakshanWeerasinghe mentioned that the origin is different (SOURCE vs COMPILED_SOURCE) when the flag is available vs not available. So, it's basically that the flag is not available via the BIR. This already seems to be the case on 2201.5.0. With the new version of GraphQL (v1.8.0) compatible with 2201.5.0, once it is pulled, there is an extra error for https://github.com/ballerina-platform/module-ballerina-graphql/blob/master/compiler-plugin-tests/src/test/resources/ballerina_sources/validator_tests/27_invalid_return_types/service.bal on the second compilation (when it is via the BIR). So this is not something new on 2201.5.x. The reason for this failing on 2201.5.x seems to be due to the source being used for the test instead of the BIR, which seems to be different from what happened previously. That'll have to be looked into separately. |
This could also be due to the new v1.8.0 release. We need to check if v1.8.0 is pulled for the compiler plugin test. |
When fixing this issues following this have been identified.
I will be looking in to the above cases as well. |
Can you please share an example for this? Just wondering for what scenarios this is the case because |
The following worked for me via the BIR too. import maryam/foo;
isolated client readonly class InterceptorImpl {
*foo:Interceptor;
isolated remote function execute() returns anydata|error => 1;
}
final foo:Interceptor fi = new InterceptorImpl();
public isolated function main() returns error? {
_ = check fi->execute(); // if `foo:Interceptor` is not `isolated` this should result in an error
} It could be being set elsewhere. |
1 & 2. This happened due to a cache issue. |
This issue is NOT closed with a proper Reason/ label. Make sure to add proper reason label before closing. Please add or leave a comment with the proper reason label now. |
Description
The
distinct
qualifier ofInterceptor
type in the following code is missing in theObjectTypeSymbol
. Tried to access the qualifiers usingobjectTypeSymbol.qualifiers()
API. Since the qualifier is missing, it cannot be validated at the compiler plugin.This issue is similar to the #37560 which was fixed earlier. But it seems the fix is a partial fix. It doesn't capture the
distinct
qualifier in types likeInterceptors
. This doesn't work in u4, u5, u6. But this works with u5 latest timestamp.Describe your problem(s)
No response
Describe your solution(s)
No response
Related area
-> Compilation
Related issue(s) (optional)
No response
Suggested label(s) (optional)
No response
Suggested assignee(s) (optional)
No response
The text was updated successfully, but these errors were encountered: