@@ -256,7 +256,7 @@ describeFunctions(const char *functypes, const char *pattern, bool verbose, bool
256256" WHEN p.proiswindow THEN '%s'\n"
257257" WHEN p.prorettype = 'pg_catalog.trigger'::pg_catalog.regtype THEN '%s'\n"
258258" ELSE '%s'\n"
259- "END as \"%s\"" ,
259+ " END as \"%s\"" ,
260260gettext_noop ("Result data type" ),
261261gettext_noop ("Argument data types" ),
262262/* translator: "agg" is short for "aggregate" */
@@ -330,15 +330,19 @@ describeFunctions(const char *functypes, const char *pattern, bool verbose, bool
330330
331331if (verbose )
332332appendPQExpBuffer (& buf ,
333+ ",\n CASE WHEN prosecdef THEN '%s' ELSE '%s' END AS \"%s\""
333334",\n CASE\n"
334335" WHEN p.provolatile = 'i' THEN '%s'\n"
335336" WHEN p.provolatile = 's' THEN '%s'\n"
336337" WHEN p.provolatile = 'v' THEN '%s'\n"
337- "END as \"%s\""
338+ " END as \"%s\""
338339",\n pg_catalog.pg_get_userbyid(p.proowner) as \"%s\",\n"
339340" l.lanname as \"%s\",\n"
340341" p.prosrc as \"%s\",\n"
341342" pg_catalog.obj_description(p.oid, 'pg_proc') as \"%s\"" ,
343+ gettext_noop ("definer" ),
344+ gettext_noop ("invoker" ),
345+ gettext_noop ("Security" ),
342346gettext_noop ("immutable" ),
343347gettext_noop ("stable" ),
344348gettext_noop ("volatile" ),