re PR fortran/54033 (gfortran: Passing file as include directory - add diagnostic and ICE with -cpp)
2012-08-01 Thomas König <tkoenig@gcc.gnu.org> PR fortran/54033 * scanner.c (add_path_to_list): Emit warning if an error occurs for an include path, if it is not present or if it is not a directory. Do not add the path in these cases. 2012-08-01 Thomas König <tkoenig@gcc.gnu.org> PR fortran/54033 * gfortran.dg/include_6.f90: New test case. * gfortran.dg/include_7.f90: New test case. * gfortran.dg/include_3.f90: Add dg-warning for missing directory. From-SVN: r190054
This commit is contained in:
parent
fdd195f49b
commit
ff9e56a94f
|
@ -1,3 +1,10 @@
|
||||||
|
2012-08-01 Thomas König <tkoenig@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR fortran/54033
|
||||||
|
* scanner.c (add_path_to_list): Emit warning if an error occurs
|
||||||
|
for an include path, if it is not present or if it is not a
|
||||||
|
directory. Do not add the path in these cases.
|
||||||
|
|
||||||
2012-07-31 Janus Weil <janus@gcc.gnu.org>
|
2012-07-31 Janus Weil <janus@gcc.gnu.org>
|
||||||
|
|
||||||
PR fortran/42418
|
PR fortran/42418
|
||||||
|
|
|
@ -311,12 +311,29 @@ add_path_to_list (gfc_directorylist **list, const char *path,
|
||||||
{
|
{
|
||||||
gfc_directorylist *dir;
|
gfc_directorylist *dir;
|
||||||
const char *p;
|
const char *p;
|
||||||
|
struct stat st;
|
||||||
|
|
||||||
p = path;
|
p = path;
|
||||||
while (*p == ' ' || *p == '\t') /* someone might do "-I include" */
|
while (*p == ' ' || *p == '\t') /* someone might do "-I include" */
|
||||||
if (*p++ == '\0')
|
if (*p++ == '\0')
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (stat (p, &st))
|
||||||
|
{
|
||||||
|
if (errno != ENOENT)
|
||||||
|
gfc_warning_now ("Include directory \"%s\": %s", path,
|
||||||
|
xstrerror(errno));
|
||||||
|
else
|
||||||
|
/* FIXME: Also support -Wmissing-include-dirs. */
|
||||||
|
gfc_warning_now ("Nonexistent include directory \"%s\"", path);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else if (!S_ISDIR (st.st_mode))
|
||||||
|
{
|
||||||
|
gfc_warning_now ("\"%s\" is not a directory", path);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (head || *list == NULL)
|
if (head || *list == NULL)
|
||||||
{
|
{
|
||||||
dir = XCNEW (gfc_directorylist);
|
dir = XCNEW (gfc_directorylist);
|
||||||
|
|
|
@ -1,3 +1,10 @@
|
||||||
|
2012-08-01 Thomas König <tkoenig@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR fortran/54033
|
||||||
|
* gfortran.dg/include_6.f90: New test case.
|
||||||
|
* gfortran.dg/include_7.f90: New test case.
|
||||||
|
* gfortran.dg/include_3.f90: Add dg-warning for missing directory.
|
||||||
|
|
||||||
2012-08-01 Tom de Vries <tom@codesourcery.com>
|
2012-08-01 Tom de Vries <tom@codesourcery.com>
|
||||||
|
|
||||||
* gcc.dg/tree-ssa/vrp76.c: New test.
|
* gcc.dg/tree-ssa/vrp76.c: New test.
|
||||||
|
|
|
@ -24,3 +24,4 @@ end function
|
||||||
|
|
||||||
! { dg-do compile }
|
! { dg-do compile }
|
||||||
! { dg-options "-fpreprocessed -g3" }
|
! { dg-options "-fpreprocessed -g3" }
|
||||||
|
! { dg-warning "Nonexistent include directory" "missing directory" { target *-*-* } 0 }
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
! { dg-do compile }
|
||||||
|
! { dg-options "-I gfortran.log" }
|
||||||
|
! { dg-warning "is not a directory" "" { target *-*-* } 0 }
|
||||||
|
end
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
! { dg-do compile }
|
||||||
|
! { dg-options "-I nothere" }
|
||||||
|
! { dg-warning "Nonexistent include directory" "missing directory" { target *-*-* } 0 }
|
||||||
|
end
|
||||||
|
|
Loading…
Reference in New Issue