analyzer: implement exploded_path copy ctor
authorDavid Malcolm <dmalcolm@redhat.com>
Fri, 26 Feb 2021 21:35:32 +0000 (16:35 -0500)
committerDavid Malcolm <dmalcolm@redhat.com>
Fri, 26 Feb 2021 21:35:32 +0000 (16:35 -0500)
gcc/analyzer/ChangeLog:
* engine.cc (exploded_path::exploded_path): New copy-ctor.
* exploded-graph.h (exploded_path::operator=): Drop decl.

gcc/analyzer/engine.cc
gcc/analyzer/exploded-graph.h

index 6077cc8..5339ea3 100644 (file)
@@ -3352,6 +3352,15 @@ exploded_graph::to_json () const
   return egraph_obj;
 }
 
+exploded_path::exploded_path (const exploded_path &other)
+: m_edges (other.m_edges.length ())
+{
+  int i;
+  const exploded_edge *eedge;
+  FOR_EACH_VEC_ELT (other.m_edges, i, eedge)
+    m_edges.quick_push (eedge);
+}
+
 /* Look for the last use of SEARCH_STMT within this path.
    If found write the edge's index to *OUT_IDX and return true, otherwise
    return false.  */
index 2d4cb9f..871cb78 100644 (file)
@@ -866,7 +866,6 @@ class exploded_path
 public:
   exploded_path () : m_edges () {}
   exploded_path (const exploded_path &other);
-  exploded_path & operator= (const exploded_path &other);
 
   unsigned length () const { return m_edges.length (); }