Porting to 64 bit Cygwin (was Re: Difference in 32/64-bit curl.)

Corinna Vinschen corinna-cygwin@cygwin.com
Wed Apr 24 18:37:00 GMT 2013


On Apr 24 20:25, Erwin Waterlander wrote:
> Op 24-4-2013 15:47, Corinna Vinschen schreef:
> >On Apr 24 14:59, Corinna Vinschen wrote:
> >>On Apr 23 23:56, Christian Franke wrote:
> >>>Possibly a __builtin_va_list related gcc bug.
> >>This is rather unlikely.  That code is shared between Cygwin and
> >>Mingw, and chances are that the bug would have been found already.
> >>
> >>What about a type issue?  int vs. long?
> >For clearness I decided to add a quick lecture.  Hope that's ok.
> >
> >The Cygwin x86_64 toolchain is using the LP64(*) data model.  That means,
> >in contrast to Windows, which uses an LLP64(*) data model, sizeof(long)
> >!= sizeof(int), just as on Linux.
> >
> >For comparison:
> >
> >                  Cygwin   Windows  Cygwin
> >		 Linux    x86_64   Linux
> >		 Windows           x86_64
> >		 i686
> >
> >sizeof(int)         4        4        4
> >sizeof(long)        4        4        8
> >sizeof(size_t)      4        8        8
> >sizeof(void*)       4        8        8
> 
> And these. Interesting for people handling Unicode (wide) text:
> 
> sizeof(wchar_t)       2        2        2
> sizeof(wint_t)          2        2        4

No, that's not correct:

  sizeof(wint_t)          4        4        4

This is very important because of WEOF.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list