Re: CS_UINT_TYPE, but not CS_BIGINT_TYPE
"ZIGLIO, Frediano, VF-IT" <[email protected]>
| Newsgroups | gmane.comp.db.tds.freetds |
|---|---|
| Message-ID | <[email protected]> |
> > James K. Lowden wrote: > > Federico Alves wrote: > >> I open a ticket with DBD-Sybase and the author Michel > Peppler thinks > >> there is an issue > >> with freetds, not with DBD-Sybase. > >> <URL: http://rt.cpan.org/Ticket/Display.html?id=34411 > > >> > >> On Mon Mar 24 20:19:06 2008, falves1 wrote: > >>> I compiled DBD-Sybase 1.08 using DBI 1.604, and the perl > Makefile.PL > >>> works fine, but then when I do a make I get this > >>> Sybase.xsi:275: error: invalid lvalue in assignment > >>> Sybase.xsi: In function âXS_DBD__Sybase__db_DESTROYâ: > >>> Sybase.xsi:334: error: invalid lvalue in assignment > >>> make: *** [Sybase.o] Error 1 > >> This is a problem with FreeTDS. > >> > >> The issue is that FreeTDS defines CS_UINT_TYPE, but not > CS_BIGINT_TYPE, > >> and Sybase never defines one without the other. > > > > I'm not convinced this is a "problem" with FreeTDS, and I'm > not sure how > > to fix it. > > > > FreeTDS doesn't guarantee line-by-line compatibility with > Sybase's header > > files. The project's header files describe the functions, > structures, and > > datatypes implemented by the library. If CS_UINT_TYPE but not > > CS_BIGINT_TYPE is supported/used/implemented by the > library, then only > > CS_UINT_TYPE *should* appear in the header file. Anything > else would > > mislead the developer: the translation unit might compile > but fail to > > link, or link and not work. > > > > Michael, AIUI DBD::Sybase assumes CS_BIGINT_TYPE upon testing for > > CS_UINT_TYPE. Wouldn't it be better to test for > CS_BIGINT_TYPE directly? > > I've made those changes, but (using 0.82rc2, which is > probably not quite > the latest) I get errors with CS_BIGINT not defined (and I can't test > for that, as that's a typedef, not a #define in Sybase's > implementation). > > So it looks to me like FreeTDS's OC implementation has a > small problem > in that respect (or at least had in the version I have here). > > Michael I started writing a patch to fully support bigint and date/time (attached). However I think it would be better to remove CS_BIGINT_TYPE, CS_UBIGINT_TYPE, CS_DATE_TYPE and CS_TIME_TYPE. The reason is that are not that supported and there are some possible issue with the patch: - what happen if server does not support date/time/bigint ?? FreeTDS is able to translate to a proper server type for parameters (ie numeric for bigint or datetime for time/date) ? Or should ctlib fail ? - are date and time handled correctly ? freddy77 _______________________________________________ FreeTDS mailing list [email protected] http://lists.ibiblio.org/mailman/listinfo/freetds
vedi.diff.gz
(application/x-gzip, 3.1 KB) - not displayed