On 8/19/2017 12:37 PM, Corinna Vinschen wrote: > Oh, one more thing. This is a question to Yaakov, too. > > diff --git a/newlib/libc/include/stdio.h b/newlib/libc/include/stdio.h > index 5d8cb1092..331a1cf07 100644 > --- a/newlib/libc/include/stdio.h > +++ b/newlib/libc/include/stdio.h > @@ -384,6 +384,9 @@ int _EXFUN(vdprintf, (int, const char *__restrict, > __VALIST) > #endif > #if __ATFILE_VISIBLE > int _EXFUN(renameat, (int, const char *, int, const char *)); > +# ifdef __CYGWIN__ > +int _EXFUN(renameat2, (int, const char *, int, const char *, unsigned > int)); > +# endif > #endif > > Does it makes sense to guard the renameat2 prototype more extensively > to cater for standards junkies? __MISC_VISIBLE, perhaps?
I'll defer to Yaakov. But here's a related question. Is renameat currently guarded properly? The Linux man page says: Feature Test Macro Requirements for glibc (see feature_test_macros(7)): renameat(): Since glibc 2.10: _POSIX_C_SOURCE >= 200809L Before glibc 2.10: _ATFILE_SOURCE This suggests that we should do something like the following: diff --git a/newlib/libc/include/stdio.h b/newlib/libc/include/stdio.h index 331a1cf07..9eb0964f2 100644 --- a/newlib/libc/include/stdio.h +++ b/newlib/libc/include/stdio.h @@ -381,8 +381,6 @@ FILE * _EXFUN(open_memstream, (char **, size_t *)); int _EXFUN(vdprintf, (int, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0)))); # endif -#endif -#if __ATFILE_VISIBLE int _EXFUN(renameat, (int, const char *, int, const char *)); # ifdef __CYGWIN__ int _EXFUN(renameat2, (int, const char *, int, const char *, unsigned int)); Ken