Skip to content

Type argument inference crashed #7699

@cushon

Description

@cushon
import java.util.Optional;

public class CrashRepro {
  <T> Optional<T> run(Optional<Object> optional, T t) {
    return optional.flatMap(o -> true ? Optional.of(t) : Optional.empty());
  }
}
$ ~/checker-framework-4.0.0/checker/bin/javac -processor nullness CrashRepro.java 
CrashRepro.java:5: error: [type.argument.inference.crashed] Type argument inference crashed for Optional.flatMap
    return optional.flatMap(o -> true ? Optional.of(t) : Optional.empty());
                           ^
  error: An exception occurred: GLB: subtype: T extends @Initialized @Nullable Object, supertype: T extends @Initialized @Nullable Object
1 error

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions