Broken C code
Thu Jan 27 20:20:00 GMT 2000
Stephen Davies wrote:
> 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
> 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 firstname.lastname@example.org
> Adelaide, South Australia. Voice: 08-8177 1595
> Computing & Network solutions. Fax: 08-8177 0133
> Want to unsubscribe from this list?
> Send a message to email@example.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
I suggest you have mounted the source drive in binary mode and you should
mount in in text mode instead.
Want to unsubscribe from this list?
Send a message to firstname.lastname@example.org
More information about the Cygwin