Suzanne Millstein

Results 62 comments of Suzanne Millstein

Here's another example of problems with contracts with overriden methods. ``` import org.checkerframework.checker.nullness.qual.Nullable; import org.checkerframework.checker.nullness.qual.RequiresNonNull; public class Simple { static class Super { @Nullable String name() { return ""; }...

Yes, I've got a fix: https://github.com/typetools/checker-framework/pull/6837.

Lambda and method reference cases are trickier. I'm still thinking about them.

I'm not convinced that the lambda and the method reference examples should issue warnings. Can you give an example where resource leak occurs using a lambda or method reference?

> It does seem to me that if we could fix the computed must-call types of lambdas and method refs that might be good in general, potentially for future type...

You need to remove the override of `createQualifierHierarchy` in `CollectionOwnershipAnnotatedTypeFactory`. The default implementation is correct for this hierarchy. `CollectionOwnershipQualifierHierarchy` is implemented incorrectly and should just be deleted. `CollectionOwnershipAnnotatedTypeFactory.this.TOP.getClass()` returns the...

Thanks for reporting! The bug seems to be with the special handling of the null literal in the type argument inference algorithm: ``` import org.checkerframework.checker.nullness.qual.Nullable; class Issue6815 { static

Thanks for reporting this! There is a missing cast warning here: ``` return (T) null; ```

Here's a single file test case. ``` import org.checkerframework.checker.nullness.qual.NonNull; import org.checkerframework.checker.nullness.qual.Nullable; import org.checkerframework.framework.qual.DefaultQualifier; import org.checkerframework.framework.qual.TypeUseLocation; @DefaultQualifier(value = NonNull.class, locations = TypeUseLocation.FIELD) @DefaultQualifier(value = NonNull.class, locations = TypeUseLocation.PARAMETER) @DefaultQualifier(value = NonNull.class,...