[Bug fortran/56659] New: Segfault due to missing libcpp error handler for "gfortran -cpp"
burnus at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Mar 20 07:29:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56659
Bug #: 56659
Summary: Segfault due to missing libcpp error handler for
"gfortran -cpp"
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Keywords: ice-on-invalid-code
Severity: normal
Priority: P3
Component: fortran
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: burnus@gcc.gnu.org
CC: kapinos@rz.rwth-aachen.de
Reported by Paul Kapinos at fortran@gcc,
http://thread.gmane.org/gmane.comp.gcc.fortran/40495
http://gcc.gnu.org/ml/fortran/2013-03/msg00083.html
The problem is that libcpp calls an error handler, which is not set in f951.
Namely, pfile->cb.error == NULL but should be point to a function; it has
the the prototype:
bool (*)(cpp_reader *, int, int, source_location, unsigned int, const char *,
va_list *)
C/C++ use:
in c-opts.c: "cb->error = c_cpp_error;"
the function is declared in c-family/c-common.c.
Test case:
* mkdir -p foo/bar
* chmod 000 foo
* gfortran -cpp some_file.F90
More information about the Gcc-bugs
mailing list