Such annotations may cause many erroneous notifications in core&plugins. AFAIK, there's no way to define input <-> output dependencies in annotations (e.g. "May be null only if s is null").

Probably, it makes sense to remove these error-prone annotations