aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2020-01-02 18:29:59 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2020-01-02 18:29:59 +0100
commit4a08009efaaeddde930e20f2669fd542422eec31 (patch)
treec70f62efc0235587a1554a5e5ec182973f6affde
parentf782b66765c9fccc894fff71a843343ee26ccd50 (diff)
downloadgcc-4a08009efaaeddde930e20f2669fd542422eec31.zip
gcc-4a08009efaaeddde930e20f2669fd542422eec31.tar.gz
gcc-4a08009efaaeddde930e20f2669fd542422eec31.tar.bz2
re PR c/90677 (gcc-9.1.0 fails to build __gcc_diag__ souce: error: 'cgraph_node' is not defined as a type)
PR c/90677 * cp-objcp-common.c (identifier_global_tag): Return NULL_TREE if name has not been found, rather than error_mark_node. * c-c++-common/pr90677-2.c: New test. From-SVN: r279840
-rw-r--r--gcc/cp/ChangeLog6
-rw-r--r--gcc/cp/cp-objcp-common.c7
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/c-c++-common/pr90677-2.c8
4 files changed, 24 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 35cd60e..35b954ca 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,9 @@
+2020-01-02 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/90677
+ * cp-objcp-common.c (identifier_global_tag): Return NULL_TREE if name
+ has not been found, rather than error_mark_node.
+
2020-01-01 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
diff --git a/gcc/cp/cp-objcp-common.c b/gcc/cp/cp-objcp-common.c
index d2a6800..42eb5ac 100644
--- a/gcc/cp/cp-objcp-common.c
+++ b/gcc/cp/cp-objcp-common.c
@@ -354,8 +354,11 @@ identifier_global_value (tree name)
tree
identifier_global_tag (tree name)
{
- return lookup_qualified_name (global_namespace, name, /*prefer_type*/2,
- /*complain*/false);
+ tree ret = lookup_qualified_name (global_namespace, name, /*prefer_type*/2,
+ /*complain*/false);
+ if (ret == error_mark_node)
+ return NULL_TREE;
+ return ret;
}
/* Returns true if NAME refers to a built-in function or function-like
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 96289dd..7c959f4 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2020-01-02 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/90677
+ * c-c++-common/pr90677-2.c: New test.
+
2020-01-02 Dennis Zhang <dennis.zhang@arm.com>
* gcc.target/arm/multilib.exp: Add combination tests for armv8.6-a.
diff --git a/gcc/testsuite/c-c++-common/pr90677-2.c b/gcc/testsuite/c-c++-common/pr90677-2.c
new file mode 100644
index 0000000..1d125e0
--- /dev/null
+++ b/gcc/testsuite/c-c++-common/pr90677-2.c
@@ -0,0 +1,8 @@
+/* PR c/90677 */
+/* { dg-do compile } */
+/* { dg-options "-W -Wall" } */
+
+extern void foo (int, int, const char *, ...)
+ __attribute__ ((__format__ (__gcc_tdiag__, 3, 4)));
+struct cgraph_node;
+extern void bar (struct cgraph_node *);