Skip site navigation (1) Skip section navigation (2)

Re: Strange Behavior when calling a C function by a plpgsql stored prcedure

From: "Tom Pfau" <T(dot)Pfau(at)emCrit(dot)com>
To: "plpgsql" <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: Strange Behavior when calling a C function by a plpgsql stored prcedure
Date: 2002-05-03 15:56:00
Message-ID: 5C47691674725C47B02996F02C0D362107B679@exchange.rane.net (view raw or flat)
Thread:
Lists: pgsql-bugs
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:amedici(at)fr(dot)netcentrex(dot)net]
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
amedici(at)fr(dot)netcentrex(dot)net

pgsql-bugs by date

Next:From: Stephen AmadeiDate: 2002-05-04 03:03:56
Subject: 7.2.1 segfaults.
Previous:From: Tom LaneDate: 2002-05-03 15:29:55
Subject: Re: Strange Behavior when calling a C function by a plpgsql stored prcedure

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group