diff options
author | Andres Freund | 2017-03-29 20:16:49 +0000 |
---|---|---|
committer | Andres Freund | 2017-03-30 13:25:46 +0000 |
commit | 5ded4bd21403e143dd3eb66b92d52732fdac1945 (patch) | |
tree | e0ec55a8afd221282172fd36783ada06840c0134 /src/include/fmgr.h | |
parent | 389bb2818f404d5b967f21e1ac4f987f894e94bb (diff) |
Remove support for version-0 calling conventions.
The V0 convention is failure prone because we've so far assumed that a
function is V0 if PG_FUNCTION_INFO_V1 is missing, leading to crashes
if a function was coded against the V1 interface. V0 doesn't allow
proper NULL, SRF and toast handling. V0 doesn't offer features that
V1 doesn't.
Thus remove V0 support and obsolete fmgr README contents relating to
it.
Author: Andres Freund, with contributions by Peter Eisentraut & Craig Ringer
Reviewed-By: Peter Eisentraut, Craig Ringer
Discussion: https://postgr.es/m/[email protected]
Diffstat (limited to 'src/include/fmgr.h')
-rw-r--r-- | src/include/fmgr.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/include/fmgr.h b/src/include/fmgr.h index 6128752ab19..0c695e246a5 100644 --- a/src/include/fmgr.h +++ b/src/include/fmgr.h @@ -336,10 +336,10 @@ extern struct varlena *pg_detoast_datum_packed(struct varlena * datum); /*------------------------------------------------------------------------- * Support for detecting call convention of dynamically-loaded functions * - * Dynamically loaded functions may use either the version-1 ("new style") - * or version-0 ("old style") calling convention. Version 1 is the call - * convention defined in this header file; version 0 is the old "plain C" - * convention. A version-1 function must be accompanied by the macro call + * Dynamically loaded functions currently can only use the version-1 ("new + * style") calling convention. Version-0 ("old style") is not supported + * anymore. Version 1 is the call convention defined in this header file, and + * must be accompanied by the macro call * * PG_FUNCTION_INFO_V1(function_name); * |