This is the mail archive of the
cygwin@sourceware.cygnus.com
mailing list for the Cygwin project.
Re: gcc does not handle macro properly
- To: gnu-win32 at cygnus dot com, papilla at cs dot tamu dot edu
- Subject: Re: gcc does not handle macro properly
- From: marcus at bighorn dot dr dot lucent dot com
- Date: Wed, 17 Jun 1998 12:25:56 -0600
papilla@cs.tamu.edu says:
>... gcc does not handle propertly the following macro:
>
> #define FD_CLR(fd,set) do { \
> u_int __i; \
> for (__i = 0; ...
>
> The compiler says: parse error before for...
>
> In fact, I edited the file with vi and remove all the ^M after the \ and
> it works. (Now I have different error messages) I am pretty sure that it
> comes from some silly TEXT and BINARY mode. And perhaps the solution would
> be to use the 'mount' programs....
>
> Benoit Papillault
Absolutely correct. If the file has <CR><LF> present for newlines and you
mount it as text, the \<CR><LF> is read as a backslash followed by a newline.
The compiler treats this as whitespace. If, however, you mount its filesystem
as a binary only filesystem, the compiler reads backslash, carriage return,
newline. It treats the backslash carriage return sequence as just a carriage
return (whitespace), then the newline is processed which terminates the
macro definition.
marcus hall
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".