From 2d66852a27c5d0ec50ae021820d1de22caa2b1bd Mon Sep 17 00:00:00 2001 From: Victor Costan Date: Thu, 7 Oct 2021 03:00:37 -0700 Subject: [PATCH] Fix typo/minor grammar error in subtyping.md (#317) --- src/subtyping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/subtyping.md b/src/subtyping.md index 8ac7c1ab..1d892e6c 100644 --- a/src/subtyping.md +++ b/src/subtyping.md @@ -418,7 +418,7 @@ And that's why function types, unlike anything else in the language, are **contra**variant over their arguments. Now, this is all well and good for the types the standard library provides, but -how is variance determined for type that *you* define? A struct, informally +how is variance determined for types that *you* define? A struct, informally speaking, inherits the variance of its fields. If a struct `MyType` has a generic argument `A` that is used in a field `a`, then MyType's variance over `A` is exactly `a`'s variance over `A`.