[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)'

2015-05-28 Thread rguenth at gcc dot gnu.org
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)'

2015-05-29 Thread danglin at gcc dot gnu.org
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)'

2015-05-30 Thread ebotcazou at gcc dot gnu.org
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)'

2015-05-30 Thread danglin at gcc dot gnu.org
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.