Skip to content

JSpecify: False positive when wrapping nullable array of nullable arrays with requireNonNull #1521

Description

@unv-unv

When 2-dimensional array each dimension of which is nullable is wrapped into Objects.requireNonNull, second dimension is also erroneously marked as non-null:

@NullMarked
public class Test {
  private char @Nullable [] @Nullable [] foo = null;

  void test() {
    // BUG: [NullAway] Writing @Nullable expression into array with @NonNull contents.
    Objects.requireNonNull(foo)[0] = null;
  }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions