diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2014-12-21 15:30:39 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2014-12-21 15:31:14 -0500 |
commit | acbcb3262984d9a78021cfc8518a6b30c880312e (patch) | |
tree | a62a8a876bab587e9d4c5ef38b163be9aae05067 | |
parent | f8c51fe6bbb095133e4218170ac70f7b86f928f5 (diff) |
Docs: clarify treatment of variadic functions with zero variadic arguments.
Explain that you have to use "VARIADIC ARRAY[]" to pass an empty array
to a variadic parameter position. This was already implicit in the text
but it seems better to spell it out.
Per a suggestion from David Johnston, though I didn't use his proposed
wording. Back-patch to all supported branches.
-rw-r--r-- | doc/src/sgml/xfunc.sgml | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml index 1515e649153..ccafc9da24f 100644 --- a/doc/src/sgml/xfunc.sgml +++ b/doc/src/sgml/xfunc.sgml @@ -740,6 +740,20 @@ SELECT mleast(VARIADIC ARRAY[10, -1, 5, 4.4]); </para> <para> + Specifying <literal>VARIADIC</> in the call is also the only way to + pass an empty array to a variadic function, for example: + +<screen> +SELECT mleast(VARIADIC ARRAY[]::numeric[]); +</screen> + + Simply writing <literal>SELECT mleast()</> does not work because a + variadic parameter must match at least one actual argument. + (You could define a second function also named <literal>mleast</>, + with no parameters, if you wanted to allow such calls.) + </para> + + <para> The array element parameters generated from a variadic parameter are treated as not having any names of their own. This means it is not possible to call a variadic function using named arguments (<xref |