-
Notifications
You must be signed in to change notification settings - Fork 376
Closed as duplicate of#6520
Description
public record Test(
String type) {
void test(List<Test> externals) {
externals.stream()
.collect(Collectors.groupingBy(Test::type))
.entrySet()
.stream()
.forEach(values -> {
throw new RegularException("KER_SERVERAPI_DUPLICATE_EID_TYPE",
"Duplicate external ID type");
});
}
}
Compilation fails with
C:\Projects\pvyscomponents\java\libs\kernel\repository\api\src\main\java\com\provys\repository\Test.java:21:18
java: [expression.unparsable] Expression invalid in dependent type annotation: [error for expression: externals.stream().collect(java.util.stream.Collectors.groupingBy(Test::type)); error: Invalid 'Test::type' because class org.checkerframework.com.github.javaparser.ast.expr.MethodReferenceExpr is not a supported expression]
C:\Projects\pvyscomponents\java\libs\kernel\repository\api\src\main\java\com\provys\repository\Test.java:21:18
java: [lambda.param] incompatible parameter types for parameter 0 in lambda expression.
function parameter type: Entry<capture#01 extends @KeyFor("externals.stream().collect(java.util.stream.Collectors.groupingBy(Test::type))") Object super @KeyFor("externals.stream().collect(java.util.stream.Collectors.groupingBy(Test::type))") String, List<Test>>
lambda parameter type : Entry<capture#01 extends @KeyFor("[error for expression: externals.stream().collect(java.util.stream.Collectors.groupingBy(Test::type)); error: Invalid 'Test::type' because class org.checkerframework.com.github.javaparser.ast.expr.MethodReferenceExpr is not a supported expression]") Object super @KeyFor("[error for expression: externals.stream().collect(java.util.stream.Collectors.groupingBy(Test::type)); error: Invalid 'Test::type' because class org.checkerframework.com.github.javaparser.ast.expr.MethodReferenceExpr is not a supported expression]") String, List<Test>>
expression.unparsable seems like caught internal error.
Unlike other recently reported problems, it is probably something older as expression.unparsable has been suppressed in our code even before 3.42.0 and I only noticed it after upgarde to 3.46.0 because lambda.param appeared
Metadata
Metadata
Assignees
Labels
No labels