https://gcc.gnu.org/g:c2914de58ba9124b344a8c0cadc02b7d480ff41c

commit r16-6822-gc2914de58ba9124b344a8c0cadc02b7d480ff41c
Author: David Malcolm <[email protected]>
Date:   Fri Jan 16 10:54:31 2026 -0500

    analyzer: eliminate unused field eh_dispatch_edge_op::m_dst_snode [PR123540]
    
    gcc/analyzer/ChangeLog:
            PR analyzer/123540
            * ops.cc (eh_dispatch_edge_op::make): Drop dst_snode param to
            ctor.
            (eh_dispatch_edge_op::eh_dispatch_edge_op): Likewise, dropping
            field eh_dispatch_edge_op::m_dst_snode.
            (eh_dispatch_try_edge_op::eh_dispatch_try_edge_op): Likewise.
            (eh_dispatch_allowed_edge_op::eh_dispatch_allowed_edge_op):
            Likewise.
            * ops.h (eh_dispatch_edge_op::eh_dispatch_edge_op): Likewise.
            (eh_dispatch_edge_op::m_dst_snode): Drop unused field.
            (eh_dispatch_try_edge_op::eh_dispatch_try_edge_op): Drop unused
            dst_snode param.
    
    Signed-off-by: David Malcolm <[email protected]>

Diff:
---
 gcc/analyzer/ops.cc | 9 +++------
 gcc/analyzer/ops.h  | 3 ---
 2 files changed, 3 insertions(+), 9 deletions(-)

diff --git a/gcc/analyzer/ops.cc b/gcc/analyzer/ops.cc
index 36043310ff6b..92e2cc42917b 100644
--- a/gcc/analyzer/ops.cc
+++ b/gcc/analyzer/ops.cc
@@ -1856,7 +1856,7 @@ eh_dispatch_edge_op::make (supernode *src_snode,
       {
        eh_catch ehc = get_catch (eh_reg, dst_snode);
        return std::make_unique<eh_dispatch_try_edge_op>
-         (src_snode, dst_snode,
+         (src_snode,
           cfg_edge, eh_dispatch_stmt,
           eh_reg, ehc);
       }
@@ -1876,14 +1876,12 @@ eh_dispatch_edge_op::make (supernode *src_snode,
 
 eh_dispatch_edge_op::
 eh_dispatch_edge_op (supernode *src_snode,
-                    supernode *dst_snode,
                     enum kind kind_,
                     ::edge cfg_edge,
                     const geh_dispatch &geh_dispatch_stmt,
                     eh_region eh_reg)
 : control_flow_op (kind_, cfg_edge, geh_dispatch_stmt),
   m_src_snode (src_snode),
-  m_dst_snode (dst_snode),
   m_eh_region (eh_reg)
 {
 }
@@ -1913,12 +1911,11 @@ apply_constraints (const superedge *sedge,
 
 eh_dispatch_try_edge_op::
 eh_dispatch_try_edge_op (supernode *src_snode,
-                        supernode *dst_snode,
                         ::edge cfg_edge,
                         const geh_dispatch &geh_dispatch_stmt,
                         eh_region eh_reg,
                         eh_catch ehc)
-: eh_dispatch_edge_op (src_snode, dst_snode,
+: eh_dispatch_edge_op (src_snode,
                       kind::eh_dispatch_try_edge,
                       cfg_edge, geh_dispatch_stmt, eh_reg),
   m_eh_catch (ehc)
@@ -2037,7 +2034,7 @@ eh_dispatch_allowed_edge_op (supernode *src_snode,
                             ::edge cfg_edge,
                             const geh_dispatch &geh_dispatch_stmt,
                             eh_region eh_reg)
-: eh_dispatch_edge_op (src_snode, dst_snode,
+: eh_dispatch_edge_op (src_snode,
                       kind::eh_dispatch_try_edge,
                       cfg_edge, geh_dispatch_stmt, eh_reg)
 {
diff --git a/gcc/analyzer/ops.h b/gcc/analyzer/ops.h
index 7f0dadb03630..f1c67d4e7710 100644
--- a/gcc/analyzer/ops.h
+++ b/gcc/analyzer/ops.h
@@ -810,7 +810,6 @@ public:
 
 protected:
   eh_dispatch_edge_op (supernode *src_snode,
-                      supernode *dst_snode,
                       enum kind kind_,
                       ::edge cfg_edge,
                       const geh_dispatch &geh_dispatch_stmt,
@@ -834,7 +833,6 @@ private:
                        std::unique_ptr<rejected_constraint> *out) const = 0;
 
   supernode *m_src_snode;
-  supernode *m_dst_snode;
   eh_region m_eh_region;
 };
 
@@ -845,7 +843,6 @@ class eh_dispatch_try_edge_op : public eh_dispatch_edge_op
 {
 public:
   eh_dispatch_try_edge_op (supernode *src_snode,
-                          supernode *dst_snode,
                           ::edge cfg_edge,
                           const geh_dispatch &geh_dispatch_stmt,
                           eh_region eh_reg,

Reply via email to