> The body of callit() need be little more than OidFunctionCall1()
> plus whatever error checking and security checking you want to
> include.
esp=# create table test(f text);
CREATE TABLE
esp=# create function test() returns void as
$$
begin
insert into test values ('called');
end;
$$ language plpgsql;
esp=# create or replace function test2() returns void as
esp-# $$
esp$# declare
esp$# r record;
esp$# begin
esp$# select into r 'abc';
esp$# perform callit('test()'::regprocedure, r);
esp$# end;
esp$#
esp$# $$ language plpgsql;
CREATE FUNCTION
esp=# select test2();
esp=# select * from test;
f
--------
called
(1 row)
one word...
w00t
Merlin