Received: from sss.sss.pgh.pa.us (sss.pgh.pa.us [206.210.65.6]) by hub.org (8.9.3/8.9.3) with ESMTP id KAA70640 for ; Wed, 2 Jun 1999 10:25:44 -0400 (EDT) (envelope-from tgl@sss.pgh.pa.us) Received: from sss.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.sss.pgh.pa.us (8.9.1/8.9.1) with ESMTP id KAA25078; Wed, 2 Jun 1999 10:25:04 -0400 (EDT) To: "Brendan McKenna" cc: pgsql-interfaces@postgreSQL.org Subject: Re: [INTERFACES] pgsql_perl5 fails to compile In-reply-to: Your message of Tue, 01 Jun 1999 14:28:30 +0000 <199906011323.OAA21560@w3s.ie> Date: Wed, 02 Jun 1999 10:25:04 -0400 Message-ID: <25076.928333504@sss.pgh.pa.us> From: Tom Lane "Brendan McKenna" writes: > When I attempt to compile, I get the following messages: > gcc -c -I/usr/local/pgsql/include -Dbool=char -DHAS_BOOL -O2 -DVERSION=\"1.8.0\" -DXS_VERSION=\"1.8.0\" -fpic -I/usr/lib/perl5/5.00555/i686-linux/CORE Pg.c > Pg.xs: In function `XS_Pg_PQprint': > Pg.xs:584: `na' undeclared (first use this function) > Pg.xs:584: (Each undeclared identifier is reported only once > Pg.xs:584: for each function it appears in.) > Pg.xs: In function `XS_PG_results_fetchrow': > Pg.xs:1256: `sv_undef' undeclared (first use this function) > Pg.xs: In function `XS_PG_results_print': > Pg.xs:1296: `na' undeclared (first use this function) > make: *** [Pg.o] Error 1 > The output from my perl -v command is as follows: > This is perl, version 5.005_55 built for i686-linux Hmm. The perl5 module compiles and works under Perl 5.004 (I have 5.004_04 here), but the bits you are pointing at look like they are referring to Perl internals that they probably shouldn't refer to :-(. Perhaps that stuff has been changed in 5.005. Are there any Perl gurus in the house? How can this code be rewritten in a more version-independent way? The two print routines want to be able to take a variable number of arguments, and XS_PG_results_fetchrow wants to be able to return an undef result. Surely there's a right way to do both things... regards, tom lane