From db81e91cc66acc7d439750affde9374971341428 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Tue, 5 Nov 2019 09:39:14 +0100 Subject: [PATCH] Remove FIELD_DECL leftover. 2019-11-05 Martin Liska PR c++/92339 * fold-const.c (operand_compare::hash_operand): Remove FIELD_DECL handling. 2019-11-05 Martin Liska PR c++/92339 * g++.dg/pr92339.C: New test. From-SVN: r277816 --- gcc/ChangeLog | 6 ++++++ gcc/fold-const.c | 4 ---- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.dg/pr92339.C | 10 ++++++++++ 4 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 gcc/testsuite/g++.dg/pr92339.C diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f492ea6da0c..2d11f3deac6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-11-05 Martin Liska + + PR c++/92339 + * fold-const.c (operand_compare::hash_operand): Remove + FIELD_DECL handling. + 2019-11-05 Aldy Hernandez * tree-vrp.h (vrp_bitmap_equal_p): Remove. diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 1e25859a707..88a069f4306 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -3682,10 +3682,6 @@ operand_compare::hash_operand (const_tree t, inchash::hash &hstate, case IDENTIFIER_NODE: hstate.add_object (IDENTIFIER_HASH_VALUE (t)); return; - case FIELD_DECL: - inchash::add_expr (DECL_FIELD_OFFSET (t), hstate, flags); - inchash::add_expr (DECL_FIELD_BIT_OFFSET (t), hstate, flags); - return; case FUNCTION_DECL: /* When referring to a built-in FUNCTION_DECL, use the __builtin__ form. Otherwise nodes that compare equal according to operand_equal_p might diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index cdb6b31286a..db8798b9c11 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-11-05 Martin Liska + + PR c++/92339 + * g++.dg/pr92339.C: New test. + 2019-11-05 Jakub Jelinek * g++.dg/gomp/declare-variant-7.C: New test. diff --git a/gcc/testsuite/g++.dg/pr92339.C b/gcc/testsuite/g++.dg/pr92339.C new file mode 100644 index 00000000000..5bf15b08b17 --- /dev/null +++ b/gcc/testsuite/g++.dg/pr92339.C @@ -0,0 +1,10 @@ +/* PR c++/92339 */ +/* { dg-options "-std=c++11" } */ + +class a { + template struct c { c(a *); }; + int m_fn1(); + unsigned long d; + using e = c; +}; +int a::m_fn1() { e(this); return 0; } -- 2.30.2