Skip Menu |

Preferred bug tracker

Please visit the preferred bug tracker to report your issue.

This queue is for tickets about the DateTime CPAN distribution.

Report information
The Basics
Id: 2500
Status: resolved
Priority: 0/
Queue: DateTime

People
Owner: DROLSKY [...] cpan.org
Requestors:
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 0.11
Fixed in: 0.13



Subject: DateTime.obj : error LNK2001: unresolved external symbol _finite
this be windows I dunno where it's supposed to come from. The usual `#define finite _finite' trick gets the module compiled, but the infinity test doesn't pass with flying colors t\20infinite.......1..36 ok 1 - positive infinity should be infinite ok 2 - negative infinity should be infinite ok 3 - positive infinity should not be finite ok 4 - negative infinity should not be finite ok 5 - negative infinity is really negative ok 6 - positive infinity is really positive ok 7 - positive infinity is bigger than negative infinity ok 8 - infinity - normal = infinity ok 9 - normal + infinite duration = infinity ok 10 - normal - infinity = neg infinity ok 11 - normal + neg infinite duration = neg infinity not ok 12 - infinity - infinity = nan (days) # Failed test (t\20infinite.t at line 55) # got: '1.#QNAN' # expected: '-1.#IND' not ok 13 - infinity - infinity = nan (seconds) # Failed test (t\20infinite.t at line 55) # got: '1.#QNAN' # expected: '-1.#IND' not ok 14 - infinity - infinity = nan (nanoseconds) # Failed test (t\20infinite.t at line 55) # got: '0' # expected: '-1.#IND' ok 15 - infinity + normal duration = infinity ok 16 - infinity - normal duration = infinity ok 17 - infinity (datetime) == infinity (number) ok 18 - neg infinity (datetime) == neg infinity (number) ok 19 - pos year is 1.\#INF ok 20 - neg year is 1.\#INF ok 21 - pos month is 1.\#INF ok 22 - neg month is 1.\#INF ok 23 - pos day is 1.\#INF ok 24 - neg day is 1.\#INF ok 25 - pos hour is 1.\#INF ok 26 - neg hour is 1.\#INF ok 27 - pos minute is 1.\#INF ok 28 - neg minute is 1.\#INF ok 29 - pos second is 1.\#INF ok 30 - neg second is 1.\#INF ok 31 - pos microsecond is 1.\#INF ok 32 - neg microsecond is 1.\#INF ok 33 - pos millisecond is 1.\#INF ok 34 - neg millisecond is 1.\#INF ok 35 - pos nanosecond is 1.\#INF ok 36 - neg nanosecond is 1.\#INF
Date: Tue, 6 May 2003 09:34:52 -0500 (CDT)
From: Dave Rolsky <autarch [...] urth.org>
To: Guest via RT <bug-DateTime [...] rt.cpan.org>
CC: Autrijus Tang <autrijus [...] autrijus.org>
Subject: Re: [cpan #2500] DateTime.obj : error LNK2001: unresolved external symbol _finite
RT-Send-Cc:
Autrijus, this is you, right? You should make sure an email address appears on these bug reports. Otherwise it's not that useful. On Tue, 6 May 2003, Guest via RT wrote: Show quoted text
> The usual `#define finite _finite' trick gets the module compiled,
Um, care to share that trick with me? Show quoted text
> not ok 12 - infinity - infinity = nan (days) > # Failed test (t\20infinite.t at line 55) > # got: '1.#QNAN' > # expected: '-1.#IND'
I wonder what "-1.#IND" is supposed to be? Any idea? Show quoted text
> not ok 13 - infinity - infinity = nan (seconds) > # Failed test (t\20infinite.t at line 55) > # got: '1.#QNAN' > # expected: '-1.#IND' > not ok 14 - infinity - infinity = nan (nanoseconds) > # Failed test (t\20infinite.t at line 55) > # got: '0' > # expected: '-1.#IND'
And that's just weird. That should be the same as the other two that failed. -dave /*======================= House Absolute Consulting www.houseabsolute.com =======================*/
Date: Tue, 6 May 2003 22:42:44 +0800
From: Autrijus Tang <autrijus [...] autrijus.org>
To: Dave Rolsky <autarch [...] urth.org>
CC: Guest via RT <bug-DateTime [...] rt.cpan.org>, Autrijus Tang <autrijus [...] autrijus.org>
Subject: Re: [cpan #2500] DateTime.obj : error LNK2001: unresolved external symbol _finite
RT-Send-Cc:
On Tue, May 06, 2003 at 09:34:52AM -0500, Dave Rolsky wrote: Show quoted text
> Autrijus, this is you, right?
Left. Wrong. Anyway, not right. :-) Show quoted text
> > The usual `#define finite _finite' trick gets the module compiled,
> > Um, care to share that trick with me?
And my C-fu is so bad that I can't even parse that bug report. Thanks, /Autrijus/
Download (untitled)
application/pgp-signature 187b

Message body not shown because it is not plain text.

Show quoted text
> On Tue, 6 May 2003, Guest via RT wrote: >
> > The usual `#define finite _finite' trick gets the module compiled,
> > Um, care to share that trick with me?
Yeah, open DateTime.xs, and add the line #define finite _finite and then compile the thing, cause it won't compile otherwise. A simple `#define finite' would also suffice. This error is a little odd cause _finite does show up in MSVCRT.LIB and ccflags is (-MD means MSVCRT.LIB): -nologo -O1 -MD -DNDEBUG -DWIN32 -D_CONSOLE -DNO_STRICT - DHAVE_DES_FCRYPT -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS - DPERL_MSVCRT_READFIX Show quoted text
> I wonder what "-1.#IND" is supposed to be? Any idea? > And that's just weird. That should be the same as the other two that > failed.
No idea. I just run the tests, I didn't write'em ;) perl -Mblib t\20infinite.t Using ./blib 1..36 ok 1 - positive infinity should be infinite ok 2 - negative infinity should be infinite ok 3 - positive infinity should not be finite ok 4 - negative infinity should not be finite ok 5 - negative infinity is really negative ok 6 - positive infinity is really positive ok 7 - positive infinity is bigger than negative infinity ok 8 - infinity - normal = infinity ok 9 - normal + infinite duration = infinity ok 10 - normal - infinity = neg infinity ok 11 - normal + neg infinite duration = neg infinity not ok 12 - infinity - infinity = nan (days) # Failed test (t\20infinite.t at line 55) # got: '1.#QNAN' # expected: '-1.#IND' not ok 13 - infinity - infinity = nan (seconds) # Failed test (t\20infinite.t at line 55) # got: '1.#QNAN' # expected: '-1.#IND' not ok 14 - infinity - infinity = nan (nanoseconds) # Failed test (t\20infinite.t at line 55) # got: '0' # expected: '-1.#IND' ok 15 - infinity + normal duration = infinity ok 16 - infinity - normal duration = infinity ok 17 - infinity (datetime) == infinity (number) ok 18 - neg infinity (datetime) == neg infinity (number) ok 19 - pos year is 1.\#INF ok 20 - neg year is 1.\#INF ok 21 - pos month is 1.\#INF ok 22 - neg month is 1.\#INF ok 23 - pos day is 1.\#INF ok 24 - neg day is 1.\#INF ok 25 - pos hour is 1.\#INF ok 26 - neg hour is 1.\#INF ok 27 - pos minute is 1.\#INF ok 28 - neg minute is 1.\#INF ok 29 - pos second is 1.\#INF ok 30 - neg second is 1.\#INF ok 31 - pos microsecond is 1.\#INF ok 32 - neg microsecond is 1.\#INF ok 33 - pos millisecond is 1.\#INF ok 34 - neg millisecond is 1.\#INF ok 35 - pos nanosecond is 1.\#INF ok 36 - neg nanosecond is 1.\#INF # Looks like you failed 3 tests of 36.
Not that it matters much, but this is also broken in 0.11 So i dunno why "DROLSKY - Keyword 0.11 deleted"
Date: Wed, 7 May 2003 16:58:25 -0500 (CDT)
From: Dave Rolsky <autarch [...] urth.org>
To: Guest via RT <bug-DateTime [...] rt.cpan.org>
Subject: Re: [cpan #2500] DateTime.obj : error LNK2001: unresolved external symbol _finite
RT-Send-Cc:
On Wed, 7 May 2003, Guest via RT wrote: Show quoted text
> > > The usual `#define finite _finite' trick gets the module compiled,
> > > > Um, care to share that trick with me?
> > Yeah, open DateTime.xs, and add the line > > #define finite _finite > > and then compile the thing, cause it won't compile otherwise. > A simple `#define finite' would also suffice.
Unfortunately, both of those break tests on my box, so it probably needs some sort of preprocessor protection. I hate C code. BTW, who are you? I have no way of emailing you directly. Show quoted text
> > I wonder what "-1.#IND" is supposed to be? Any idea? > > And that's just weird. That should be the same as the other two that > > failed.
> No idea. > I just run the tests, I didn't write'em ;)
Yeah, but I just run them on Linux, where they work ;) I don't have a Windows compiler so unless someone who knows more about Windows compilation than me contributes, this probably will stay unfixed. -dave /*======================= House Absolute Consulting www.houseabsolute.com =======================*/