This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug bootstrap/66744] New: Bootstrap failure due to conflicting access() on i686-w64-mingw32
- From: "MatthewS.Grochowalski at ge dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 02 Jul 2015 20:29:41 +0000
- Subject: [Bug bootstrap/66744] New: Bootstrap failure due to conflicting access() on i686-w64-mingw32
- Auto-submitted: auto-generated
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66744
Bug ID: 66744
Summary: Bootstrap failure due to conflicting access() on
i686-w64-mingw32
Product: gcc
Version: 6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: bootstrap
Assignee: unassigned at gcc dot gnu.org
Reporter: MatthewS.Grochowalski at ge dot com
Target Milestone: ---
Attempting to build trunk r225313 with --enable-languages=c,c++,ada
--enable-checking=release --disable-nls --disable-werror --disable-multilib
--build=i686-w64-mingw32 --host=i686-w64-mingw32
--with-gmp=/c/toolchain/prereqs --with-mpc=/c/toolchain/prereqs
--with-mpfr=/c/toolchain/prereqs --prefix=/c/toolchain/gcc-mingw
--target=i686-w64-mingw32 --disable-win32-registry --disable-shared
--with-sysroot=/c/toolchain/gcc-mingw --enable-version-specific-runtime-libs
Using gcc version 4.9.2 (i686-win32-dwarf-rev2, Built by MinGW-W64 project)
Stage1 fails with the following:
../../gcc/gcc/tree-sra.c:875:46: error: macro "access" requires 2 arguments,
but only 1 given
struct access *access = new struct access ();
^
../../gcc/gcc/tree-sra.c:2410:46: error: macro "access" requires 2 arguments,
but only 1 given
struct access *access = new struct access ();
^
Makefile:1071: recipe for target `tree-sra.o' failed
make[3]: *** [tree-sra.o] Error 1
It's conflicting with access macro definition in the mingw32-w64 C io.h header:
#ifdef __USE_MINGW_ACCESS
/* Old versions of MSVCRT access() just ignored X_OK, while the version
shipped with Vista, returns an error code. This will restore the
old behaviour */
static inline int __mingw_access (const char *__fname, int __mode) {
return _access (__fname, __mode & ~X_OK);
}
#define access(__f,__m) __mingw_access (__f, __m)
#endif
This appears to have been introduced by r223956.