Hi, 

I compiled the follwing code with gcc -shared buglib.c -o buglib.dll:


>>> buglib.h is:

   struct T
   {
     double x[256];
     double y[256];
     int   i;
   };
   struct T fun(int a);

>>> buglib.c is
   
   #include "buglib.h"

   struct T fun(int a)
   {
     struct T retval;
     int i;
     for (i=0; i<256;++i)
     {
             retval.x[i]=(double)i;
             retval.y[i]=(double)i;  
     }
     return retval;
   }

If I linkt this lib to

>>> main.c 

    #include <stdio.h>
    #include "buglib.h"


    int main()
    {
        struct T x = fun(1);
        int i;
        for (i=0; i<10; ++i)
                printf("%d %d\n", x.x[i],  x.y[i]);
    }

Now the output is totally wrong !
I tried it with the cygwin port gcc 3.4.4 and with
gcc 3.3.1 on Suse Linux.

Any hints ?

Greetings, Uwe

Reply via email to