aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Griesemer <gri@golang.org>2010-05-04 17:31:40 -0700
committerRobert Griesemer <gri@golang.org>2010-05-04 17:31:40 -0700
commitdf674ffb43628bde1221f3a34c98f91f44528b97 (patch)
tree2745106b81355b115d50a698ed56d79ab0b24a81
parenta3a0a5fdc3bc2debdc5fda4c11fc013076795df4 (diff)
downloadgo-df674ffb43628bde1221f3a34c98f91f44528b97.tar.gz
go-df674ffb43628bde1221f3a34c98f91f44528b97.zip
go spec: clarification of make arguments,
specification of runtime exceptions for make and division by zero R=r, rsc, ken2, iant CC=golang-dev https://golang.org/cl/1081041
-rw-r--r--doc/go_spec.html31
1 files changed, 17 insertions, 14 deletions
diff --git a/doc/go_spec.html b/doc/go_spec.html
index fe592ee97c..1cbab6dffa 100644
--- a/doc/go_spec.html
+++ b/doc/go_spec.html
@@ -1,5 +1,5 @@
<!-- title The Go Programming Language Specification -->
-<!-- subtitle Version of March 25, 2010 -->
+<!-- subtitle Version of May 4, 2010 -->
<!--
Todo
@@ -2869,7 +2869,6 @@ For integer values, <code>/</code> and <code>%</code> satisfy the following rela
<p>
with <code>(a / b)</code> truncated towards zero.
-Examples:
</p>
<pre>
@@ -2881,6 +2880,7 @@ Examples:
</pre>
<p>
+If the divisor is zero, a <a href="#Run_time_panics">run-time panic</a> occurs.
If the dividend is positive and the divisor is a constant power of 2,
the division may be replaced by a right shift, and computing the remainder may
be replaced by a bitwise "and" operation:
@@ -2921,6 +2921,9 @@ follows:
For floating-point numbers,
<code>+x</code> is the same as <code>x</code>,
while <code>-x</code> is the negation of <code>x</code>.
+The result of a floating-point division by zero is not specified beyond the
+IEEE-754 standard; whether a <a href="#Run_time_panics">run-time panic</a>
+occurs is implementation-specific.
</p>
<h3 id="Integer_overflow">Integer overflow</h3>
@@ -4421,24 +4424,24 @@ The memory is initialized as described in the section on initial values
</p>
<pre class="grammar">
-make(T [, optional list of expressions])
-</pre>
+Call Type T Result
-<p>
-For instance
-</p>
+make(T, n) slice slice of type T with length n and capacity n
+make(T, n, m) slice slice of type T with length n and capacity m
-<pre>
-make(map[string] int)
+make(T) map map of type T
+make(T, n) map map of type T with initial space for n elements
+
+make(T) channel synchronous channel of type T
+make(T, n) channel asynchronous channel of type T, buffer size n
</pre>
-<p>
-creates a new map value and initializes it to an empty map.
-</p>
<p>
-The parameters affect sizes for allocating slices, maps, and
-buffered channels:
+The arguments <code>n</code> and <code>m</code> must be of integer type.
+A <a href="#Run_time_panics">run-time panic</a> occurs if <code>n</code>
+is negative or larger than <code>m</code>, or if <code>n</code> or
+<code>m</code> cannot be represented by an <code>int</code>.
</p>
<pre>