Default parameters are filled in by the C++ compiler. You must provide them when calling from a non-C++ program.
-----Original Message----- From: Alban M�dici [mailto:[EMAIL PROTECTED]] Sent: Friday, May 03, 2002 10:57 AM To: plpgsql Subject: [BUGS] Strange Behavior when calling a C function by a plpgsql stored prcedure In some plpgsql method, I call some C function with a optional parameters. This is the signature of my function : extern "C" My_Mem_Macro_Parser_Integer myMethod( int nbFields, int toto = -1) { blablabla ..... return integer; } When I call this function with the second parameters, there's no problems. But if I call without toto : plpgsql: CREATE FUNCTION CallMymethodWithoutToto ( INTEGER -- [IN] nb Field ) RETURNS INTEGER AS ' 'path2MyLib/MyLib.so', 'myMethod' LANGUAGE 'C'; Appear a strange Behavior : I'm explain, in myC function, I switch the value of toto, try to find "-1". But I NEVER have "-1". I this case I always have "8" in toto integer !!!!!! -- Alban M�dici R&D Software Engineer tel: +33 (0)2 31 46 35 80 (+005) -------------------------------- http://www.netcentrex.net [EMAIL PROTECTED] ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])
