cloned_fields.push_back ((StructFieldType *) f->clone ());
auto &&discriminant_opt = has_discriminant ()
- ? tl::optional (get_discriminant ().clone_expr ())
+ ? tl::optional<std::unique_ptr<HIR::Expr>> (
+ get_discriminant ().clone_expr ())
: tl::nullopt;
return new VariantDef (id, defid, identifier, ident, type,
cloned_fields.push_back ((StructFieldType *) f->monomorphized_clone ());
auto discriminant_opt = has_discriminant ()
- ? tl::optional (get_discriminant ().clone_expr ())
+ ? tl::optional<std::unique_ptr<HIR::Expr>> (
+ get_discriminant ().clone_expr ())
: tl::nullopt;
return new VariantDef (id, defid, identifier, ident, type,