The following bug has been logged online:

Bug reference:      1022
Logged by:          Bruce Patin
Email address:      [EMAIL PROTECTED]
PostgreSQL version: 7.4
Operating system:   FreeBSD 4.8-RELEASE
Description:        date calculation forces wrong type in function parameter and 
causes error
Details: 

In PostgreSQL 7.4 only, a date type provided as a function parameter gets 
automatically typecast to 'timestamp without time zone' when calculations are 
performed on it.

In Pg 7.3 and before, I have successfully used a function with a date parameter such 
as this simplified version:

CREATE FUNCTION input_date(date) RETURNS INT AS 'SELECT 0;' LANGUAGE 'SQL';

Then, when I calculate a date during execution,
such as:

select input_date('now'::date+'5 years'::interval);

PostgreSQL 7.4 gives error:

ERROR:  function input_date(timestamp without time zone) does not exist

The same function works correctly in PostgreSQL 7.3 and before, and it also works even 
in 7.4 if I do not try to do date calculation, such as:

select input_date('now');


---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
      joining column's datatypes do not match

Reply via email to