Derek Price <[EMAIL PROTECTED]> writes: > /* Enable GNU extensions in glob.h. */ > -#ifndef _GNU_SOURCE > +#if defined _LIBC && !defined _GNU_SOURCE > # define _GNU_SOURCE 1 > #endif
I just checked the glibc source file include/libc-symbols.h, and it defines both _LIBC and _GNU_SOURCE. So this stuff isn't needed at all; please remove these lines from glob.c instead. > + HAVE_STRUCT_DIRENT_D_TYPE is defined by GNULIB's glob.m4 when the same > + member is found. */ A bit wordy; please rephrase to "HAVE_STRUCT_DIRENT_D_TYPE plays the same rule in gnulib." > - qsort ((__ptr_t) &pglob->gl_pathv[oldcount], > + qsort ((void *) &pglob->gl_pathv[oldcount], You can remove the cast entirely, right? > - free ((__ptr_t) pglob->gl_pathv[pglob->gl_offs + i]); > - free ((__ptr_t) pglob->gl_pathv); > + free ((void *) pglob->gl_pathv[pglob->gl_offs + i]); > + free ((void *) pglob->gl_pathv); Similarly, these casts aren't needed. - free ((__ptr_t) array[--i]); + free ((void *) array[--i]); Nor these. > - free ((__ptr_t) array[--i]); > + free ((void *) array[--i]); Nor this one. > + p = mempcpy ((void *) new->name, name, len); Nor this one. > - free ((__ptr_t) names->name); > + free ((void *) names->name); Nor this. > - return (((flags & GLOB_ALTDIRFUNC) > - ? (*pglob->gl_stat) (fullname, &st) > - : __stat64 (fullname, &st64)) == 0); > + return ((flags & GLOB_ALTDIRFUNC) > + ? (*pglob->gl_stat) (fullname, &st) == 0 && S_ISDIR (st.st_mode) > + : __stat64 (fullname, &st64) == 0 && S_ISDIR (st64.st_mode)); As long as you're reparenthesizing you might as well get rid of the unnecessary ones around (flags & GLOB_ALTDIRFUNC). > + new->name = malloc (len + 1 > + + ((flags & GLOB_MARK) && isdir)); This line is 80 columns; should probably shrink it to 78, e.g., via. new->name = malloc (...); glob.c is looking pretty good now. I gotta run now, but I'll look at glob.h later today I hope. _______________________________________________ bug-gnulib mailing list bug-gnulib@gnu.org http://lists.gnu.org/mailman/listinfo/bug-gnulib