Skip to content

Commit

Permalink
Reorder template concretization for type deduction in clang
Browse files Browse the repository at this point in the history
  • Loading branch information
Bo-Yuan-Huang committed Aug 24, 2020
1 parent 9db4b58 commit c92b8ea
Showing 1 changed file with 12 additions and 6 deletions.
18 changes: 12 additions & 6 deletions src/ila-mngr/u_unroller_smt.cc
Original file line number Diff line number Diff line change
Expand Up @@ -71,16 +71,16 @@ UnrollerSmt<Generator>::UnrollWithStepsUnconnected_(const size_t& len,
return smt_gen_.GetShimExpr(nullptr, "");
}

//
// PathUnroller
//

// Concretize SMT generators
template class PathUnroller<Z3ExprAdapter>;
template class UnrollerSmt<Z3ExprAdapter>;
#ifdef SMTSWITCH_INTERFACE
template class PathUnroller<SmtSwitchItf>;
template class UnrollerSmt<SmtSwitchItf>;
#endif // SMTSWITCH_INTERFACE

//
// PathUnroller
//

template <class Generator> void PathUnroller<Generator>::SetDecidingVars() {
ExprSet unique_vars;
for (const auto& instr : seq_) {
Expand Down Expand Up @@ -116,4 +116,10 @@ void PathUnroller<Generator>::MakeOneTransition(const size_t& idx) {
this->assert_holder_.push_back(decode);
}

// Concretize SMT generators
template class PathUnroller<Z3ExprAdapter>;
#ifdef SMTSWITCH_INTERFACE
template class PathUnroller<SmtSwitchItf>;
#endif // SMTSWITCH_INTERFACE

} // namespace ilang

0 comments on commit c92b8ea

Please sign in to comment.