Mail Archives: cygwin/2008/04/08/14:48:18
Robert Eckhoff wrote on 08 April 2008 17:41:
> Below are the errors I received before I made their
> associated changes.
> Dave Korn wrote:
>> Robert Eckhoff wrote on 05 April 2008 22:39:
>>
>>
>>> directories. Winsup also had some source problems that I corrected.
>>>
>>> ~/cygwin-1.5.25-11/winsup/cygwin/winsup.h:276
>>> -extern bool wsock_started;
>>> +extern "C" bool wsock_started;
>>>
>>>
> Before I made the change, Error:
> /home/rpeckhoff/cygwin-1.5.25-11/winsup/cygwin/winsup.h:276: error:
> previous declaration of 'bool wsock_started' with 'C++' linkage
> /home/rpeckhoff/cygwin-1.5.25-11/winsup/cygwin/autoload.cc:246
>> error:
> conflicts with new declaration with 'C' linkage
How bizarre. You said you were using a series 4 GCC, didn't you? This
could be a bug or oversight in the code that generates the error - maybe it
should be downgraded to a warning. Or maybe there's something coming up in
C++0x that applies linkage to variables. I'll have to raise it on the gcc
list, thanks for the details.
>>> ~/cygwin-1.5.25-11/winsup/cygwin/syscall.cc:3238
>>> Uses goto's which breaks the build with gcc4.3. I rewrote the function
>>> to use if statements.
>>>
>>
>> What kind of problem does gcc4.3 have with gotos? There's nothing wrong
>> with them in general and lots of other functions in that file have them,
>> so maybe there's some underlying problem which is the actual thing that
>> needs fixing?
> /home/rpeckhoff/cygwin-1.5.25-11/winsup/cygwin/syscalls.cc:
> In function
> 'FILE* popen(const char*, const char*)':
> /home/rpeckhoff/cygwin-1.5.25-11/winsup/cygwin/syscalls.cc:323 8: error:
> jump to label 'err'
> /home/rpeckhoff/cygwin-1.5.25-11/winsup/cygwin/syscalls.cc:3230: error:
> from here /home/rpeckhoff/cygwin-1.5.25-11/winsup/cygwin/syscalls.cc:3233:
> error: crosses initialization of 'fhandler_pipe* fh'
> /home/rpeckhoff/cygwin-1.5.25-11/winsup/cygwin/syscalls.cc:323 8: error:
> jump to label 'err'
> /home/rpeckhoff/cygwin-1.5.25-11/winsup/cygwin/syscalls.cc:3210: error:
> from here /home/rpeckhoff/cygwin-1.5.25-11/winsup/cygwin/syscalls.cc:3233:
> error: crosses initialization of 'fhandler_pipe* fh'
Ah, yes, that is potentially quite a nasty thing to happen. I wonder if
there's a code path where it could end up using the uninitialised 'fh'? I'll
take a look.
BTW, you're stepping into unknown territory trying to build the DLL with
such a recent GCC. The distro compiler is still on 3.4.4 for a number of
reasons (see archives passim ad nauseam), so you're probably the first to
discover these issues; thanks for the report!
cheers,
DaveK
--
Can't think of a witty .sigline today....
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -