summaryrefslogtreecommitdiff
path: root/gcc/fortran
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/fortran')
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/cpp.c8
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index be0f29f8a12..1566d08f9b6 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,8 @@
+2010-05-26 Joseph Myers <joseph@codesourcery.com>
+
+ * cpp.c (cb_cpp_error): Save and restore
+ global_dc->warn_system_headers, not variable warn_system_headers.
+
2010-05-26 Steven Bosscher <steven@gcc.gnu.org>
* fortran/f95-lang.c: Do not include libfuncs.h, expr.h, and except.h.
diff --git a/gcc/fortran/cpp.c b/gcc/fortran/cpp.c
index 6ff464a8cf0..6361085372e 100644
--- a/gcc/fortran/cpp.c
+++ b/gcc/fortran/cpp.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
This file is part of GCC.
@@ -975,13 +975,13 @@ cb_cpp_error (cpp_reader *pfile ATTRIBUTE_UNUSED, int level, int reason,
{
diagnostic_info diagnostic;
diagnostic_t dlevel;
- int save_warn_system_headers = warn_system_headers;
+ bool save_warn_system_headers = global_dc->warn_system_headers;
bool ret;
switch (level)
{
case CPP_DL_WARNING_SYSHDR:
- warn_system_headers = 1;
+ global_dc->warn_system_headers = 1;
/* Fall through. */
case CPP_DL_WARNING:
dlevel = DK_WARNING;
@@ -1012,7 +1012,7 @@ cb_cpp_error (cpp_reader *pfile ATTRIBUTE_UNUSED, int level, int reason,
diagnostic_override_option_index (&diagnostic, OPT_Wcpp);
ret = report_diagnostic (&diagnostic);
if (level == CPP_DL_WARNING_SYSHDR)
- warn_system_headers = save_warn_system_headers;
+ global_dc->warn_system_headers = save_warn_system_headers;
return ret;
}