Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sourceware DOT cygnus DOT com Delivered-To: mailing list cygwin AT sourceware DOT cygnus DOT com Message-ID: <38911A8E.24DD2D49@rochester.rr.com> Date: Thu, 27 Jan 2000 23:26:54 -0500 From: Terry Lincoln X-Mailer: Mozilla 4.05 [en] (X11; I; Linux 2.0.35 i586) MIME-Version: 1.0 To: Stephen Davies CC: cygwin AT sourceware DOT cygnus DOT com Subject: Re: Broken C code References: <200001280253 DOT NAA06143 AT mustang DOT sdc DOT com DOT au> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Stephen Davies wrote: > Hello. > > I have managed to break my ability to compile a number of C programs with gcc > 2.7B19 under cygwin B19.1. > > In September 1999, all of these programs compiled successfully on the same > machine with the same cygwin environment. > > Now, all of the programs involved fail to compile with the same error messages > and I haven't a clue as to why. > > In all cases, the following code is included from a vendor-specific set of > headers: > > typedef IDI_ULONG (__attribute__((__stdcall__)) * OPI_DELETE_CALLBACK ) (OPI_CONID, OPI_FILEID);^M > __declspec(dllexport) IDI_USHORT __attribute__((__stdcall__)) OpiMakeConnection( OPI_PCONID pConID );^M > > (This is just two of many similar lines) > > This produces the following compiler message: > > ../include/opiob.h: In function '__declspec': > In file included from ../include/opi.h:283, > from cic.h:1, > from getpk.c:1 > ../include/opiob.h:141 parse error before '__declspec' > ../include/opiob.h:140 declaration for parameter 'OpiMakeConnection' but no > such parameter > > followed by a whole bundle of similar errors. > > Can anyone please explain to me what I have done/not done to cause this > misinterpretation of the __declspec(dllexport) syntax? > > Cheers and thanks, > Stephen Davies > > -- > ======================================================================== > Stephen Davies Consulting scldad AT sdc DOT com DOT au > Adelaide, South Australia. Voice: 08-8177 1595 > Computing & Network solutions. Fax: 08-8177 0133 > > -- > Want to unsubscribe from this list? > Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com I believe you have a text-mode vs. binary-mode problem. Your files have ^M^J at end of each line but only ^J is needed by the compiler this leaves an invalid ^M character at the beginning of lines which the compiler can't parse. I suggest you have mounted the source drive in binary mode and you should mount in in text mode instead. Warm Regards, Terry Lincoln -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com