This patch fixes a subtle bug in how we create lvalues to reference-typed fields. In the rare case that the field is umodeled because of the depth limit on field modeling, the lvalue created can be malformed. This patch prevents that and adds some related assertions to other code dealing with lvalues for references. Differential Revision: https://reviews.llvm.org/D142468