Skip to content

Commit 0f3fc19

Browse files
committed
Traits do allow TypeParameters with defaults
Core traits such as the arithmetic operations have generic arguments such as: pub trait Add<Rhs = Self> Addresses #249
1 parent fdd69a6 commit 0f3fc19

File tree

1 file changed

+0
-23
lines changed

1 file changed

+0
-23
lines changed

gcc/rust/hir/rust-ast-lower-item.h

-23
Original file line numberDiff line numberDiff line change
@@ -613,29 +613,6 @@ class ASTLoweringItem : public ASTLoweringBase
613613
if (trait.has_generics ())
614614
{
615615
generic_params = lower_generic_params (trait.get_generic_params ());
616-
617-
for (auto &generic_param : generic_params)
618-
{
619-
switch (generic_param->get_kind ())
620-
{
621-
case HIR::GenericParam::GenericKind::TYPE: {
622-
const HIR::TypeParam &t
623-
= static_cast<const HIR::TypeParam &> (*generic_param);
624-
625-
if (t.has_type ())
626-
{
627-
// see https://github.com/rust-lang/rust/issues/36887
628-
rust_error_at (
629-
t.get_locus (),
630-
"defaults for type parameters are not allowed here");
631-
}
632-
}
633-
break;
634-
635-
default:
636-
break;
637-
}
638-
}
639616
}
640617

641618
std::vector<std::unique_ptr<HIR::TypeParamBound>> type_param_bounds;

0 commit comments

Comments
 (0)