From 9469d083e5aaded40447f527f5b2415b24fd296e Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Wed, 26 Mar 2008 14:43:20 +0000
Subject: [PATCH] Improve documentation for odd array slice behavior.

---
 doc/src/sgml/array.sgml | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/doc/src/sgml/array.sgml b/doc/src/sgml/array.sgml
index b1e0b293107..9b0e658d81a 100644
--- a/doc/src/sgml/array.sgml
+++ b/doc/src/sgml/array.sgml
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/array.sgml,v 1.62 2007/06/07 14:49:56 tgl Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/array.sgml,v 1.63 2008/03/26 14:43:20 momjian Exp $ -->
 
 <sect1 id="arrays">
  <title>Arrays</title>
@@ -258,6 +258,9 @@ SELECT schedule[1:2][2] FROM sal_emp WHERE name = 'Bill';
  {{meeting,lunch},{training,presentation}}
 (1 row)
 </programlisting>
+
+  To avoid confusion with slices, use slice syntax for all dimmension
+  references, e.g.  <literal>[1:2][1:1]</>, not <literal>[2][1:1]</>.
  </para>
 
  <para>
@@ -275,7 +278,8 @@ SELECT schedule[1:2][2] FROM sal_emp WHERE name = 'Bill';
   any of the subscript expressions are null.  However, in other corner
   cases such as selecting an array slice that
   is completely outside the current array bounds, a slice expression
-  yields an empty (zero-dimensional) array instead of null.
+  yields an empty (zero-dimensional) array instead of null.  (This
+  does not match non-slice behavior and is done for historical reasons.)
   If the requested slice partially overlaps the array bounds, then it
   is silently reduced to just the overlapping region.
  </para>
-- 
GitLab