mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 22:58:20 +00:00
fix for inlining type-based switch statements
This commit is contained in:
parent
0de51b31b1
commit
86aafb7c84
1 changed files with 8 additions and 3 deletions
|
@ -322,10 +322,15 @@ IntrusivePtr<Case> Case::Duplicate()
|
||||||
if ( expr_cases )
|
if ( expr_cases )
|
||||||
{
|
{
|
||||||
auto new_exprs = expr_cases->Duplicate()->AsListExprPtr();
|
auto new_exprs = expr_cases->Duplicate()->AsListExprPtr();
|
||||||
return make_intrusive<Case>(new_exprs, type_cases, s->Duplicate());
|
return make_intrusive<Case>(new_exprs, nullptr, s->Duplicate());
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( type_cases )
|
||||||
|
{
|
||||||
|
loop_over_list(*type_cases, i)
|
||||||
|
zeek::Ref((*type_cases)[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
else
|
|
||||||
return make_intrusive<Case>(nullptr, type_cases, s->Duplicate());
|
return make_intrusive<Case>(nullptr, type_cases, s->Duplicate());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue