1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-27 12:41:57 +03:00

Make the to_reg*() functions accept text not cstring.

Using cstring as the input type was a poor decision, because that's not
really a full-fledged type.  In particular, it lacks implicit coercions
from text or varchar, meaning that usages like to_regproc('foo'||'bar')
wouldn't work; basically the only case that did work without explicit
casting was a simple literal constant argument.

The lack of field complaints about this suggests that hardly anyone
is using these functions, so hopefully fixing it won't cause much of
a compatibility problem.  They've only been there since 9.4, anyway.

Petr Korobeinikov
This commit is contained in:
Tom Lane
2016-01-05 13:02:43 -05:00
parent efa318bcfa
commit ea0d494dae
4 changed files with 18 additions and 18 deletions

View File

@ -16173,7 +16173,7 @@ SELECT collation for ('foo' COLLATE "de_DE");
<function>to_regoperator</function>, <function>to_regtype</function>,
<function>to_regnamespace</function>, and <function>to_regrole</function>
functions translate relation, function, operator, type, schema, and role
names to objects of
names (given as <type>text</>) to objects of
type <type>regclass</>, <type>regproc</>, <type>regprocedure</type>,
<type>regoper</>, <type>regoperator</type>, <type>regtype</>,
<type>regnamespace</>, and <type>regrole</>