Make CREATE TYPE print warnings if a datatype's I/O functions are volatile.
Tom Lane <tgl@sss.pgh.pa.us>
Make CREATE TYPE print warnings if a datatype's I/O functions are volatile. This is a followup to commit 43ac12c6e6e397fd9142ed908447eba32d3785b2, which added regression tests checking that I/O functions of built-in types are not marked volatile. Complaining in CREATE TYPE should push developers of add-on types to fix any misdeclared functions in their types. It's just a warning not an error, to avoid creating upgrade problems for what might be just cosmetic mis-markings. Aside from adding the warning code, fix a number of types that were sloppily created in the regression tests.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/commands/typecmds.c | modified | +46 −0 |
| src/test/regress/expected/create_cast.out | modified | +2 −2 |
| src/test/regress/expected/create_type.out | modified | +4 −4 |
| src/test/regress/input/create_function_1.source | modified | +4 −4 |
| src/test/regress/output/create_function_1.source | modified | +4 −4 |
| src/test/regress/sql/create_cast.sql | modified | +2 −2 |
| src/test/regress/sql/create_type.sql | modified | +4 −4 |