[Bug gcov-profile/66319] [6 Regression] gcov-tool.c:84:65: error: invalid conversion from 'int (*)(const c har*, const stat*, int, FTW*)' to 'int (*)(const char*, const stat*, int, FTW)'
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66319 Richard Biener changed: What|Removed |Added Keywords||build Target Milestone|--- |6.0
[Bug gcov-profile/66319] [6 Regression] gcov-tool.c:84:65: error: invalid conversion from 'int (*)(const c har*, const stat*, int, FTW*)' to 'int (*)(const char*, const stat*, int, FTW)'
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66319 John David Anglin changed: What|Removed |Added CC||jason at redhat dot com --- Comment #1 from John David Anglin --- Actually, the error was introduced by this change: 2015-05-26 Jason Merrill * configure.ac: When bootstrapping with GCC, add -std=c++98 to CXX. * configure: Regenerate. This affects the hpux11 builtin defines: if (flag_pa_unix >= 1995 && !flag_iso) \ { \ builtin_define ("_XOPEN_UNIX"); \ builtin_define ("_XOPEN_SOURCE_EXTENDED"); \ } \ Probably, we want the XOPEN stuff for c++98 and later, but the bootstrap problem can only be fixed by changing bootstrap compiler. We get the "wrong" declaration for nftw when _XOPEN_SOURCE_EXTENDED isn't defined. So, I think a configure fix is needed. I noticed in testing that -std=c++98 is not used in stage2 and we don't seem to have the same language defaults there.
[Bug gcov-profile/66319] [6 Regression] gcov-tool.c:84:65: error: invalid conversion from 'int (*)(const c har*, const stat*, int, FTW*)' to 'int (*)(const char*, const stat*, int, FTW)'
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66319 Eric Botcazou changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2015-05-30 CC||ebotcazou at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #2 from Eric Botcazou --- Yes, I have various similar quirks on Solaris and I'm not sure I really want to start pulling the string... Jason, could you downgrade to -std=gnu++98, or disable it altogether on hosts other than Linux for now?
[Bug gcov-profile/66319] [6 Regression] gcov-tool.c:84:65: error: invalid conversion from 'int (*)(const c har*, const stat*, int, FTW*)' to 'int (*)(const char*, const stat*, int, FTW)'
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66319 --- Comment #3 from John David Anglin --- _HPUX_SOURCE is predefined for c++. This results in _INCLUDE_XOPEN_SOURCE_EXTENDED being defined but _XOPEN_SOURCE_EXTENDED is not predefined (see hunk in comment #1). This behavior dates back to this patch: https://gcc.gnu.org/ml/gcc-patches/2005-05/msg00589.html The HP-UX "ftw.h" header appears to be inconsistent in its use of the two defines, but I don't know the history. It seems _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED need to be predefined when _HPUX_SOURCE is predefined for consistency with current standards. This will happen with current hpux compilers as long as flag_iso is not set, so I think gnu++98 will work.