diff options
author | Rob Pike <r@golang.org> | 2009-09-16 11:49:35 -0700 |
---|---|---|
committer | Rob Pike <r@golang.org> | 2009-09-16 11:49:35 -0700 |
commit | f5588d86765baf63322d21bca251775a71fdefcd (patch) | |
tree | 873accce4e9f97cd9a213f431e46f641225774bb | |
parent | cf5832be6b75a45a108528944d418dfa0b784668 (diff) | |
download | golang-f5588d86765baf63322d21bca251775a71fdefcd.tar.gz |
slight refinement of select: evaluation is top to bottom, as in switches.
DELTA=9 (2 added, 4 deleted, 3 changed)
OCL=34690
CL=34692
-rw-r--r-- | doc/go_spec.html | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/doc/go_spec.html b/doc/go_spec.html index 7509c0dd0..68a1ea73a 100644 --- a/doc/go_spec.html +++ b/doc/go_spec.html @@ -3609,9 +3609,10 @@ RecvExpr = [ Expression ( "=" | ":=" ) ] "<-" Expression . <p> For all the send and receive expressions in the "select" -statement, the channel expression is evaluated. Any expressions -that appear on the right hand side of send expressions are also -evaluated. If any of the resulting channels can proceed, one is +statement, the channel expressions are evaluated, along with +any expressions that appear on the right hand side of send expressions, +in top-to-bottom order. +If any of the resulting operations can proceed, one is chosen and the corresponding communication and statements are evaluated. Otherwise, if there is a default case, that executes; if not, the statement blocks until one of the communications can @@ -3654,10 +3655,6 @@ for { // send random sequence of bits to c } </pre> -<font color=red> -TODO: Make semantics more precise. -</font> - <h3 id="Return_statements">Return statements</h3> @@ -4489,6 +4486,7 @@ The following minimal alignment properties are guaranteed: <ul> <li><font color=red>Implementation does not honor the restriction on goto statements and targets (no intervening declarations).</font></li> <li><font color=red>Gccgo does not implement the blank identifier.</font></li> + <li><font color=red>Method expressions are not implemented.</font></li> </ul> </div> |