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
amedici(at)fr(dot)netcentrex(dot)net