| validval(str, rk, val, st), okval(val0, ty) ∧ (is_referencevalue(val0) → validrefval(str, val0, ty, st)) ⊦ r -- _type = rk, mkfs(class, ty, fieldvar) ' = _length, ty = void_type, okval(val0, ty) ∧ (is_referencevalue(val0) → validrefval(str, val0, ty, st[rk, val])) |
is_referencevalue(val0), validval(str, rk, val, st), is_reftype(ty), validrefval(str, val0, ty, st) ⊦ r -- _type = rk, mkfs(class, ty, fieldvar) ' = _length, ty = void_type, validrefval(str, val0, ty, st[rk, val])
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ is_referencevalue(val) → ( okval(val, ty) ↔ ty = void_type ∨ is_reftype(ty))])]]