gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: More Windows stuff ... example gui apps work for me now


From: Tom Koelman
Subject: Re: More Windows stuff ... example gui apps work for me now
Date: Fri, 11 Mar 2005 16:33:25 +0100
User-agent: Gnus/5.110002 (No Gnus v0.2) Emacs/21.3.50 (windows-nt)

"Marko Riedel" <address@hidden> writes:

> Then I get the following error while building gnustep-base:
>
> GSFFCallInvocation.m: In function `GSInvocationCallback':
> GSFFCallInvocation.m:1003: error: union has no member named `_longlong'
> GSFFCallInvocation.m:1004: error: union has no member named `_ulonglong'
> GSFFCallInvocation.m:1003: warning: value computed is not used
> GSFFCallInvocation.m:1004: warning: value computed is not used
> make[2]: *** [shared_obj/GSFFCallInvocation.o] Error 1
> make[1]: *** [libgnustep-base.all.library.variables] Error 2
> make: *** [internal-all] Error 2
>
> Does anyone know what is happening here?

I can reproduce this. What actaully goes wrong is the test for
"checking whether floats are returned in integer registers" in
./configure of ffcall. When I compile the test snippet[1] there manually,
gcc 3.4.2 warns me that

--------------------------------------------------------------------------------
$ gcc conftest.c 
conftest.c: In function `main':
conftest.c:5: warning: function called through a non-compatible type
conftest.c:5: note: if this code is reached, the program will abort
--------------------------------------------------------------------------------

and indeed the test aborts. However, it depends on how dr watson on
your machine is configured whether you actually notice. On my machine
it silently writes a drwatson.log and configure assumes the answer to
the question "are floats returned in integer registers?" is no. On
another machine an error dialog appears and conftest.exe is locked
while that hasn't been done yet.

Nicola, do you have any idea whether this test is needed, and whether
gcc or the test is at fault?

Regards,
Tom Koelman

---[1] -------------------------------------------------------------------------
float x = (float)1.2;
float y = (float)1.3;
float fun () { return x*y; }
int main()
{ int val = (* (int (*) ()) fun) ();
  exit (!(val == 0x3FC7AE15 || val == 0x15AEC73F));
}
--------------------------------------------------------------------------------





reply via email to

[Prev in Thread] Current Thread [Next in Thread]