aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2008-05-21 21:52:57 +0000
committerTom Tromey <tromey@gcc.gnu.org>2008-05-21 21:52:57 +0000
commit5d6342ebc23344e8168b1589589b68f7b6781f66 (patch)
treea31b212aa429bae765ecae0b494fda6a486c56a5 /gcc
parent0fda18dd70beee1713ba7b2bd8f04222fbe535bb (diff)
downloadgcc-5d6342ebc23344e8168b1589589b68f7b6781f66.zip
gcc-5d6342ebc23344e8168b1589589b68f7b6781f66.tar.gz
gcc-5d6342ebc23344e8168b1589589b68f7b6781f66.tar.bz2
re PR preprocessor/27777 (Bad diagnostic emission when #error contains a trigraph)
gcc/testsuite PR preprocessor/27777: * gcc.dg/cpp/pr27777.c: New file. libcpp PR preprocessor/27777: * lex.c (cpp_output_line_to_string): New function. * internal.h (_cpp_begin_message): Don't declare. * errors.c (_cpp_begin_message): Now static. * include/cpplib.h (cpp_output_line_to_string): Declare. * directives.c (do_diagnostic): Rewrote. Use cpp_output_line_to_string. Don't use _cpp_begin_message. From-SVN: r135740
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.dg/cpp/pr27777.c8
2 files changed, 13 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 11f44b9..3a88c77 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2008-05-21 Tom Tromey <tromey@redhat.com>
+
+ PR preprocessor/27777:
+ * gcc.dg/cpp/pr27777.c: New file.
+
2008-05-21 Jakub Jelinek <jakub@redhat.com>
PR c++/36023
diff --git a/gcc/testsuite/gcc.dg/cpp/pr27777.c b/gcc/testsuite/gcc.dg/cpp/pr27777.c
new file mode 100644
index 0000000..89258b9
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/cpp/pr27777.c
@@ -0,0 +1,8 @@
+/* PR preprocessor/27777 */
+/* { dg-do preprocess } */
+/* { dg-options { -trigraphs -Wall } } */
+
+#error "BUG??!"
+
+/* { dg-error "BUG" "" { target *-*-* } 5 } */
+/* { dg-warning "trigraph" "" { target *-*-* } 5 } */