This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Double backslashes in fixincl header (__FD_ZERO macro)


Bruce Korb wrote:

> Frank wrote:
> > gcc-3.4.3 contains an incorrect header fix for "the __FD_ZERO macro
> > present in glibc 1.x". The file installed in
> > <prefix>/lib/gcc/i686-pc-linux-gnulibc1/3.4.3/include/gnu/types.h
> > contains the following, with spurious double-backslashes:
> [[...]]
> > This patch fixes the issue for me:
> > 
> > --- gcc-3.4.3/gcc/fixinc/fixincl.x.orig Sat Aug 14 18:38:10 2004
> > +++ gcc-3.4.3/gcc/fixinc/fixincl.x      Thu May  5 02:28:20 2005
> > @@ -124,13 +124,13 @@
> >   #include_next <gnu/types.h>\n\n\
> >   #if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
> >   #undef __FD_ZERO\n\
> > -# define __FD_ZERO(fdsetp) \\\\\n\
> > -  do { \\\\\n\
> > -    int __d0, __d1; \\\\\n\
> > -__asm__ __volatile__(\"cld ; rep ; stosl\" \\\\\n\
> > -        \t: \"=&c\" (__d0), \"=&D\" (__d1) \\\\\n\
> > -        \t: \"a\" (0), \"0\" (__FDSET_LONGS), \\\\\n\
> > -  \"1\" ((__fd_set *) (fdsetp)) :\"memory\"); \\\\\n\
> > +# define __FD_ZERO(fdsetp) \\\n\
> > +  do { \\\n\
> > +    int __d0, __d1; \\\n\
> > +__asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
> > +        \t: \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
> > +        \t: \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
> > +  \"1\" ((__fd_set *) (fdsetp)) :\"memory\"); \\\n\
> >     } while (0)\n\
> >   #endif\n\n\
> >   #define _TYPES_H_WRAPPER\n\
> 
> Hi Frank,
> 
> I do not know where you got your code, but what you have is not what
> was released and not what is under CVS.  Your patch to fixincl.x
> will correct the deviation from the released source. I just downloaded
> the distro from ftp.gnu.org:
> 
> > $ md5sum *tar.bz2
> > d2cbfe8fc3205c1d7969b26377405778  gcc-core-3.4.3.tar.bz2

Script started on Fri May  6 07:14:34 2005
# md5sum gcc-core-3.4.3.tar.bz2
d2cbfe8fc3205c1d7969b26377405778  gcc-core-3.4.3.tar.bz2
# tar xjf gcc-core-3.4.3.tar.bz2 \*.x
# head -134 gcc-3.4.3/gcc/fixinc/fixincl.x | tail -7
  do { \\\\\n\
    int __d0, __d1; \\\\\n\
__asm__ __volatile__(\"cld ; rep ; stosl\" \\\\\n\
        \t: \"=&c\" (__d0), \"=&D\" (__d1) \\\\\n\
        \t: \"a\" (0), \"0\" (__FDSET_LONGS), \\\\\n\
  \"1\" ((__fd_set *) (fdsetp)) :\"memory\"); \\\\\n\
  } while (0)\n\
# exit
Script done on Fri May  6 07:15:34 2005

The error also seems to be present in gcc-core-4.1-20050417.tar.bz2.

Frank

-- 
Frank Heckenbach, frank@g-n-u.de
http://fjf.gnu.de/
GnuPG and PGP keys: http://fjf.gnu.de/plan (7977168E)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]