The following plpgsql function errors out with cvs head: CREATE function test_assign() returns void AS $$ declare x int; BEGIN x := 9E3/2; END $$ LANGUAGE 'plpgsql';
postgres=# select test_assign(); ERROR: invalid input syntax for integer: "4500.0000000000000000" CONTEXT: PL/pgSQL function "test_assign" line 3 at assignment We do have an existing cast from numeric to type integer. But here basically we convert the value to string in exec_cast_value before calling int4in. And then use of strtol in pg_atoi leads to this complaint. Guess converting the value to string is not always a good strategy. Regards, Nikhils -- http://www.enterprisedb.com