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: <4.3.1.2.20000428103611.00bb5510@pop.ma.ultranet.com> X-Sender: lhall AT pop DOT ma DOT ultranet DOT com X-Mailer: QUALCOMM Windows Eudora Version 4.3.1 Date: Fri, 28 Apr 2000 10:44:52 -0400 To: Olivier Jacquemin , "cygwin AT sourceware DOT cygnus DOT com" From: "Larry Hall (RFK Partners, Inc)" Subject: Re: Backslash (stray) not treated correctly by gcc In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" At 04:24 AM 4/28/00, Olivier Jacquemin wrote: >Hello, > >After successful installation of cygwin 1.1.0, I tried to compile a very >simple program beginning with > >#include > >but gcc complains about the following structure from the sys/reent.h file >included by stdio.h: > >#define _REENT_INIT(var) \ > { 0, &var.__sf[0], &var.__sf[1], &var.__sf[2], 0, "", 0, "C", \ > 0, NULL, NULL, 0, NULL, NULL, 0, NULL, { {1, NULL, "", \ > { 0,0,0,0,0,0,0,0}, 0 } } } > >The first error message is > >/usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/../../../../i686-pc-cygwin/include/sy >s/reent.h:212: parse error before `{' > >which refers to the second line of the above structure. Obviously the >backslash character is not treated correctly. I get a similar error >somewhere in the stdio.h file itself, again backslash not recognized as it >should: > >#define __sputc(c, p) \ > (--(p)->_w < 0 ? \ > >--> >/usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/../../../../i686-pc-cygwin/include/st >dio.h:269: parse error before `--' > >Any fix for this ? > >Thanks much, > > _Olivier_ Parse errors in system include files are most often the result of text/binary mode incompatibilities. If you check this file with a binary editor, you will most likely see \r\n line endings. My guess is that the mount point that you have for / is binary (default in the latest net release). If you want to interpret files in text mode, you should mount text mode. If you want to keep binary mounts which will open all files (not otherwise specified) as binary, you need to remove the \r from files like stdio.h. Its your choice and once you make the decision and route out all the incompatible files, you'll find things are pretty smooth sailing. Of course, as with any half-baked idea like different formats for files in different "modes", you'll still find cases where you're "damed if you do and damned if you don't." Good luck! Larry Hall lhall AT rfk DOT com RFK Partners, Inc. http://www.rfk.com 118 Washington Street (508) 893-9779 - RFK Office Holliston, MA 01746 (508) 893-9889 - FAX (508) 560-1285 - cell phone -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com