False positives for java:S2259 (NullPointerException) when nullness annotations are used

The following snippet raises a false positive of java:S2259:

void foo (Map<String, @Nullable String> map) {
  map.size(); // "A "NullPointerException" could be thrown; "map" is nullable here.
}

Sonar seems to think that the complete map can be null when only it’s values can be null.
Screenshot of a real-world example:

It seems to affects any generic type where the type parameter allows for null values: