As it turns out, C# 8 provides an attribute that allows annotating that
an `out` parameter's nullability depends on the method's return value,
which is exactly what is desired here.
For safety purposes... In implementing the previous tests, I found that
using mod.Object.GetType() can lead to bad assertions since the same
ModProxy class is used for all mocked classes.