postgresql/src/include/parser
Tom Lane 858e776c84 Convert the reg* input functions to report (most) errors softly.
This is not really complete, but it catches most cases of practical
interest.  The main omissions are:

* regtype, regprocedure, and regoperator parse type names by
calling the main grammar, so any grammar-detected syntax error
will still be a hard error.  Also, if one includes a type
modifier in such a type specification, errors detected by the
typmodin function will be hard errors.

* Lookup errors are handled just by passing missing_ok = true
to the relevant catalog lookup function.  Because we've used
quite a restrictive definition of "missing_ok", this means that
edge cases such as "the named schema exists, but you lack
USAGE permission on it" are still hard errors.

It would make sense to me to replace most/all missing_ok
parameters with an escontext parameter and then allow these
additional lookup failure cases to be trapped too.  But that's
a job for some other day.

Discussion: https://postgr.es/m/3342239.1671988406@sss.pgh.pa.us
2022-12-27 12:26:01 -05:00
..
analyze.h Harmonize more parameter names in bulk. 2022-09-20 13:09:30 -07:00
kwlist.h Rename parser token REF to REF_P to avoid a symbol conflict. 2022-10-16 15:27:04 -04:00
parse_agg.h Harmonize more parameter names in bulk. 2022-09-20 13:09:30 -07:00
parse_clause.h Revert SQL/JSON features 2022-09-01 17:07:14 -04:00
parse_coerce.h Record dependencies of a cast on other casts that it requires. 2022-10-17 14:02:05 -04:00
parse_collate.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
parse_cte.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
parse_enr.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
parse_expr.h Apply PGDLLIMPORT markings broadly. 2022-04-08 08:16:38 -04:00
parse_func.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
parse_merge.h Add support for MERGE SQL command 2022-03-28 16:47:48 +02:00
parse_node.h Rework query relation permission checking 2022-12-06 16:09:24 +01:00
parse_oper.h Harmonize more parameter names in bulk. 2022-09-20 13:09:30 -07:00
parse_param.h Pre-beta mechanical code beautification. 2022-05-12 15:17:30 -04:00
parse_relation.h Rework query relation permission checking 2022-12-06 16:09:24 +01:00
parse_target.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
parse_type.h Convert the reg* input functions to report (most) errors softly. 2022-12-27 12:26:01 -05:00
parse_utilcmd.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
parser.h Apply PGDLLIMPORT markings broadly. 2022-04-08 08:16:38 -04:00
parsetree.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
scanner.h Harmonize more lexer function parameter names. 2022-09-22 13:27:16 -07:00
scansup.h Update copyright for 2022 2022-01-07 19:04:57 -05:00