aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@osl.iu.edu>2007-01-25 04:04:18 +0000
committerDoug Gregor <dgregor@gcc.gnu.org>2007-01-25 04:04:18 +0000
commite1f1ee86a8b97bdf12593c02c0ef6e286f2c795d (patch)
treede84af4a8232165347e6ae2334611e5bfa493cc7 /gcc
parent54654d29cb254b75a486c33b0a2bbdbddb526f33 (diff)
downloadgcc-e1f1ee86a8b97bdf12593c02c0ef6e286f2c795d.zip
gcc-e1f1ee86a8b97bdf12593c02c0ef6e286f2c795d.tar.gz
gcc-e1f1ee86a8b97bdf12593c02c0ef6e286f2c795d.tar.bz2
c-common.h (RID_FIRST_CXX0X): New.
2007-01-24 Douglas Gregor <dgregor@osl.iu.edu> * c-common.h (RID_FIRST_CXX0X): New. (RID_LAST_CXX0X): New. * c-opts.c (c_common_handle_option): -Wc++0x-compat is triggered by -Wall. * c.opt (Wc++0x-compat): New. * doc/invoke.texi (-Wc++0x-compat): Document. From-SVN: r121162
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/c-common.h2
-rw-r--r--gcc/c-opts.c1
-rw-r--r--gcc/c.opt3
-rw-r--r--gcc/doc/invoke.texi9
5 files changed, 22 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f0167fa..7040285 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+2007-01-24 Douglas Gregor <dgregor@osl.iu.edu>
+
+ * c-common.h (RID_FIRST_CXX0X): New.
+ (RID_LAST_CXX0X): New.
+ * c-opts.c (c_common_handle_option): -Wc++0x-compat is triggered
+ by -Wall.
+ * c.opt (Wc++0x-compat): New.
+ * doc/invoke.texi (-Wc++0x-compat): Document.
+
2007-01-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* builtins.c (fold_builtin_carg): New.
diff --git a/gcc/c-common.h b/gcc/c-common.h
index 7b35256..78b3497 100644
--- a/gcc/c-common.h
+++ b/gcc/c-common.h
@@ -108,6 +108,8 @@ enum rid
RID_FIRST_MODIFIER = RID_STATIC,
RID_LAST_MODIFIER = RID_ONEWAY,
+ RID_FIRST_CXX0X = RID_STATIC_ASSERT,
+ RID_LAST_CXX0X = RID_STATIC_ASSERT,
RID_FIRST_AT = RID_AT_ENCODE,
RID_LAST_AT = RID_AT_IMPLEMENTATION,
RID_FIRST_PQ = RID_IN,
diff --git a/gcc/c-opts.c b/gcc/c-opts.c
index 85ea6bb..720f72d 100644
--- a/gcc/c-opts.c
+++ b/gcc/c-opts.c
@@ -417,6 +417,7 @@ c_common_handle_option (size_t scode, const char *arg, int value)
/* C++-specific warnings. */
warn_reorder = value;
warn_nontemplate_friend = value;
+ warn_cxx0x_compat = value;
if (value > 0)
warn_write_strings = true;
}
diff --git a/gcc/c.opt b/gcc/c.opt
index c5bf9be..6d3fa88 100644
--- a/gcc/c.opt
+++ b/gcc/c.opt
@@ -132,6 +132,9 @@ Wc++-compat
C Var(warn_cxx_compat)
Warn about C constructs that are not in the common subset of C and C++
+Wc++0x-compat
+C++ ObjC++ Var(warn_cxx0x_compat)
+Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO C++ 200x
Wcast-qual
C ObjC C++ ObjC++ Var(warn_cast_qual)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 4cd0a43..18fee96 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -223,8 +223,8 @@ Objective-C and Objective-C++ Dialects}.
@xref{Warning Options,,Options to Request or Suppress Warnings}.
@gccoptlist{-fsyntax-only -pedantic -pedantic-errors @gol
-w -Wextra -Wall -Waggregate-return -Walways-true -Warray-bounds @gol
--Wno-attributes -Wc++-compat -Wcast-align -Wcast-qual -Wchar-subscripts @gol
--Wclobbered -Wcomment @gol
+-Wno-attributes -Wc++-compat -Wc++0x-compat -Wcast-align -Wcast-qual @gol
+-Wchar-subscripts -Wclobbered -Wcomment @gol
-Wconversion -Wno-deprecated-declarations @gol
-Wdisabled-optimization -Wno-div-by-zero @gol
-Wempty-body -Wno-endif-labels @gol
@@ -3149,6 +3149,11 @@ Warn about ISO C constructs that are outside of the common subset of
ISO C and ISO C++, e.g.@: request for implicit conversion from
@code{void *} to a pointer to non-@code{void} type.
+@item -Wc++0x-compat @r{(C++ and Objective-C++ only)}
+Warn about C++ constructs whose meaning differs between ISO C++ 1998 and
+ISO C++ 200x, e.g., identifiers in ISO C++ 1998 that will become keywords
+in ISO C++ 200x. This warning is enabled by @option{-Wall}.
+
@item -Wcast-qual
@opindex Wcast-qual
Warn whenever a pointer is cast so as to remove a type qualifier from