Matthieu Fertré a écrit :
> In that case, we should think about an easiest way for user to report bugs

As long as there's neither vandalism or spamming. Forums were switched to 
registered user only because of that, I guess.

>> So I registered, as I think I've fixed the SDL fullscreen bug.
> great :) You think only ? Don't you have tested it ?

(mostly outdated question now that it has been discussed and fixed over IRC)

>> The src/network/distant_cpu.h enum would gain from a more explicit name, 
>> at the same time solving the clash with the win API.
>>   
> 
> It has been fixed by lodesi if I have followed correctly

Yes.

>> I guess the installer changes are hard to review, except for the one 
>> (deki?) that provided the most recent installers through cross-compilation.

Left to do. May need some reworking, but it really is dependent on how 
SDL_image and SDL_mixer were compiled.

> Yes, the (or a ?) Apple maintainer is active. He was connected to IRC 
> Saturday morning. Unfortunately, I don't remember his name. It seems 

Let's hope he'll show up soon.

> that for Apple, isnan is not available but NAN constant is. So 2 
> solutions work. The first one is to define int isnan(int a) {return (a  
> == NAN);}between #ifdef __APPLE__. It makes it compile but I'm not sure 

lodesi commited the std::nan pseudo-fix. It's bound to break apple's but let's 
wait for the apple maintainer to check that.

> definition of isnan is the good one. Second solution is to force 
> compiler to accept C99 functions, but for this, we need someone who is 
> able to modify the autogen.sh ;-)

Maybe modifying configure.ac is not needed. It seems that either std::isnan is 
defined (mingw and linux gcc) or NAN is available.
I would suggest something like:
#ifdef __APPLE__
#  define WORMUX_ISNAN(a) (a == NAN)
#else
#  define WORMUX_ISNAN(a) std::isnan(a)
#endif

or something of the like. WORMUX_ISNAN is verbose, and isnan would probably do 
too.

However, after having looked at the isnan implementation, it seems a bit more 
complex than that:
__CRT_INLINE int __cdecl __isnan (double _x)
{
   unsigned short sw;
   __asm__ ("fxam;"
            "fstsw %%ax": "=a" (sw) : "t" (_x));
   return (sw & (FP_NAN | FP_NORMAL | FP_INFINITE | FP_ZERO | FP_SUBNORMAL))
     == FP_NAN;
}

This is, of course, x86 specific.

Kurosu

_______________________________________________
Wormux-dev mailing list
Wormux-dev@gna.org
https://mail.gna.org/listinfo/wormux-dev

Répondre à