From 5642f5d5d5e3f6867cbe4b7b6fb1588365514c9c Mon Sep 17 00:00:00 2001
From: Joseph Myers <joseph@codesourcery.com>
Date: Fri, 24 Sep 2010 16:14:40 +0100
Subject: [PATCH] common.opt (undef): New.

	* common.opt (undef): New.

testsuite:
	* gcc.dg/cpp/undef-opt-1.c: New test.

From-SVN: r164599
---
 gcc/ChangeLog                          | 4 ++++
 gcc/common.opt                         | 4 ++++
 gcc/testsuite/ChangeLog                | 4 ++++
 gcc/testsuite/gcc.dg/cpp/undef-opt-1.c | 8 ++++++++
 4 files changed, 20 insertions(+)
 create mode 100644 gcc/testsuite/gcc.dg/cpp/undef-opt-1.c

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e957d02a335e..738ae88f64f0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2010-09-24  Joseph Myers  <joseph@codesourcery.com>
+
+	* common.opt (undef): New.
+
 2010-09-24  Jakub Jelinek  <jakub@redhat.com>
 
 	PR middle-end/45234
diff --git a/gcc/common.opt b/gcc/common.opt
index 119a64af0a87..6b89c3294ed1 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -1924,6 +1924,10 @@ Driver JoinedOrMissing
 u
 Driver Joined Separate
 
+undef
+Driver
+; C option, but driver must not handle as "-u ndef".
+
 v
 Driver
 
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 659dab282b99..8c526d5ccf09 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2010-09-24  Joseph Myers  <joseph@codesourcery.com>
+
+	* gcc.dg/cpp/undef-opt-1.c: New test.
+
 2010-09-24  Jason Merrill  <jason@redhat.com>
 
 	* g++.dg/other/error10.C: Adjust expected output.
diff --git a/gcc/testsuite/gcc.dg/cpp/undef-opt-1.c b/gcc/testsuite/gcc.dg/cpp/undef-opt-1.c
new file mode 100644
index 000000000000..99c524662c69
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/cpp/undef-opt-1.c
@@ -0,0 +1,8 @@
+/* Test -undef.  A bug in its handling broke glibc builds because
+   "linux" was wrongly defined.  */
+/* { dg-do preprocess } */
+/* { dg-options "-undef" } */
+
+#ifdef linux
+#error -undef broken
+#endif
-- 
GitLab