From 79df59b1dda995c6c54d37e57d368eb5d3eb1a9d Mon Sep 17 00:00:00 2001 From: Shakeel Mahate Date: Tue, 2 Aug 2022 13:12:29 -0400 Subject: [PATCH] Incomplete sentence in _`let` bindings_ (#1697) The original sentence was grammatically unsound, specified the three options of copy, move or pointer binding in parenthesis and some words around it. Co-authored-by: Jon Ross-Perkins --- docs/design/README.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/design/README.md b/docs/design/README.md index 4a7a3d71d152..04aea1f93637 100644 --- a/docs/design/README.md +++ b/docs/design/README.md @@ -698,10 +698,11 @@ A `let`-binding may trigger a copy of the original value, or a move if the original value is a temporary, or the binding may be a pointer to the original value, like a [`const` reference in C++](). -Which option must not be observable to the programmer. For example, Carbon will -not allow modifications to the original value when it is through a pointer. This -choice may also be influenced by the type. For example, types that don't support -being copied will be passed by pointer instead. +Which of these options (copy, move, or pointer) is selected must not be +observable to the programmer. For example, Carbon will not allow modifications +to the original value when it is through a pointer. This choice may also be +influenced by the type. For example, types that don't support being copied will +be passed by pointer instead. A [generic binding](#checked-and-template-parameters) uses `:!` instead of a colon (`:`) and can only match