{
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);
}
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)
{
}
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)
::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)
{
protected:
eh_dispatch_edge_op (supernode *src_snode,
- supernode *dst_snode,
enum kind kind_,
::edge cfg_edge,
const geh_dispatch &geh_dispatch_stmt,
std::unique_ptr<rejected_constraint> *out) const = 0;
supernode *m_src_snode;
- supernode *m_dst_snode;
eh_region m_eh_region;
};
{
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,