aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAndrew Pinski <apinski@marvell.com>2019-05-20 06:59:06 +0000
committerAndrew Pinski <pinskia@gcc.gnu.org>2019-05-19 23:59:06 -0700
commit3f23e487f38e56a3daa66ad22dc2216fa17db885 (patch)
tree397fd7d94db61830bbfe735e6f8b5f0846098e48 /gcc
parent55fd9fcd83baa4034d6a5e4a0ad6527c69b94668 (diff)
downloadgcc-3f23e487f38e56a3daa66ad22dc2216fa17db885.zip
gcc-3f23e487f38e56a3daa66ad22dc2216fa17db885.tar.gz
gcc-3f23e487f38e56a3daa66ad22dc2216fa17db885.tar.bz2
[PATCH] Fix PR 81721: ICE with PCH and Pragma warning and C++ operator
libcpp/ChangeLog: 2019-05-19 Andrew Pinski <apinski@marvell.com> PR pch/81721 * lex.c (cpp_token_val_index <case SPELL_OPERATOR>): If tok->flags has NAMED_OP set, then return CPP_TOKEN_FLD_NODE. gcc/testsuite/ChangeLog: 2019-05-19 Andrew Pinski <apinski@marvell.com> PR pch/81721 * g++.dg/pch/operator-1.C: New testcase. * g++.dg/pch/operator-1.Hs: New file. From-SVN: r271395
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog6
-rw-r--r--gcc/testsuite/g++.dg/pch/operator-1.C2
-rw-r--r--gcc/testsuite/g++.dg/pch/operator-1.Hs9
3 files changed, 17 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index fe971aa..bb03a9b 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2019-05-19 Andrew Pinski <apinski@marvell.com>
+
+ PR pch/81721
+ * g++.dg/pch/operator-1.C: New testcase.
+ * g++.dg/pch/operator-1.Hs: New file.
+
2019-05-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/90498
diff --git a/gcc/testsuite/g++.dg/pch/operator-1.C b/gcc/testsuite/g++.dg/pch/operator-1.C
new file mode 100644
index 0000000..290b5f7
--- /dev/null
+++ b/gcc/testsuite/g++.dg/pch/operator-1.C
@@ -0,0 +1,2 @@
+#include "operator-1.H"
+int main(void){ major(0);} /* { dg-warning "Did not Work" } */
diff --git a/gcc/testsuite/g++.dg/pch/operator-1.Hs b/gcc/testsuite/g++.dg/pch/operator-1.Hs
new file mode 100644
index 0000000..657dae1
--- /dev/null
+++ b/gcc/testsuite/g++.dg/pch/operator-1.Hs
@@ -0,0 +1,9 @@
+# define __glibc_macro_warning1(message) _Pragma (#message)
+# define __glibc_macro_warning(message) \
+ __glibc_macro_warning1 (GCC warning message)
+#define __SYSMACROS_DM1(...) __glibc_macro_warning (#__VA_ARGS__)
+
+#define __SYSMACROS_DM(symbol) __SYSMACROS_DM1 \
+ (Did not Work)
+
+# define major(dev) __SYSMACROS_DM (major) (dev+0)