Re: BUG #6238: ECPG converts "long long" to long on Windows - Mailing list pgsql-bugs

From Michael Meskes
Subject Re: BUG #6238: ECPG converts "long long" to long on Windows
Date
Msg-id 20111004121539.GA9786@feivel.credativ.lan
Whole thread Raw
In response to BUG #6238: ECPG converts "long long" to long on Windows  ("Jim Gray" <jim.gray@bull.com>)
Responses Re: BUG #6238: ECPG converts "long long" to long on Windows
Re: BUG #6238: ECPG converts "long long" to long on Windows
List pgsql-bugs
Hi Jim,

> Postgres 9.1.1 installed on a Windows XP PC.
> Running ECPG with "long long" data type specified in the SQL DECLARE SECTION
> results in "long" being used instead.  The same input file works OK on Linux

This suggests that HAVE_LONG_LONG_INT was not defined during ecpg build. Or in
other words ecpg thinks long long is not supported.

> with Postgres 9.0.3   Manually changing the data type to "long long" in the
> ECPG output file on Windows:
> ECPGt_long_long,&(_cpp_i_pkd1),(long)1,(long)1,sizeof(long long) -- results
> in run time error "unsupported data type".  I am using MS Visual C++ Express

Did you also change the variable definition to long long?

> 2010 on Windows, which accepts "long long" to mean the same thing as
> __int64, but ECPG doesn't recognize the later.
> May be related to BUG #5464: ecpg on 64bit system converts "long long" to
> "long"

Well, this bug is (at least I don't know otherwise) fixed for more than a year.
Maybe the configure test doesn't work on Windows? I don't know.

Michael
--
Michael Meskes
Michael at Fam-Meskes dot De, Michael at Meskes dot (De|Com|Net|Org)
Michael at BorussiaFan dot De, Meskes at (Debian|Postgresql) dot Org
Jabber: michael.meskes at googlemail dot com
VfL Borussia! Força Barça! Go SF 49ers! Use Debian GNU/Linux, PostgreSQL

pgsql-bugs by date:

Previous
From: Craig Ringer
Date:
Subject: Re: BUG #6239: Looking for a technical contact point for PostgreSQL compatibility issue on Windows8
Next
From: Robert Haas
Date:
Subject: Re: BUG #6238: ECPG converts "long long" to long on Windows