Clarify CREATE FUNCTION documentation about handling of typmods.

The previous text was a bit misleading, as well as unnecessarily vague
about what information would be discarded.  Per gripe from Craig Skinner.
This commit is contained in:
Tom Lane 2013-11-13 13:26:33 -05:00
parent 869b1e4a67
commit 5d924f067c

View File

@ -579,12 +579,13 @@ CREATE FUNCTION foo(int, int default 42) ...
<para>
The full <acronym>SQL</acronym> type syntax is allowed for
input arguments and return value. However, some details of the
type specification (e.g., the precision field for
type <type>numeric</type>) are the responsibility of the
underlying function implementation and are silently swallowed
(i.e., not recognized or
enforced) by the <command>CREATE FUNCTION</command> command.
declaring a function's arguments and return value. However,
parenthesized type modifiers (e.g., the precision field for
type <type>numeric</type>) are discarded by <command>CREATE FUNCTION</>.
Thus for example
<literal>CREATE FUNCTION foo (varchar(10)) ...</>
is exactly the same as
<literal>CREATE FUNCTION foo (varchar) ...</>.
</para>
<para>