gccrs: Statics are a coercion site

Statics can be assigned to a block expression meaning they need to behave
similarly to constant items.

gcc/rust/ChangeLog:

	* typecheck/rust-hir-type-check-toplevel.cc (TypeCheckTopLevel::visit):
	Make static items behave more similarly to const items.
This commit is contained in:
Philip Herron
2022-09-17 10:05:59 +01:00
committed by Arthur Cohen
parent 70fc174b78
commit 408ab8a6e4

View File

@@ -261,11 +261,11 @@ TypeCheckTopLevel::visit (HIR::StaticItem &var)
TyTy::BaseType *expr_type = TypeCheckExpr::Resolve (var.get_expr ());
TyTy::BaseType *unified
= unify_site (var.get_mappings ().get_hirid (),
TyTy::TyWithLocation (type, var.get_type ()->get_locus ()),
TyTy::TyWithLocation (expr_type,
var.get_expr ()->get_locus ()),
var.get_locus ());
= coercion_site (var.get_mappings ().get_hirid (),
TyTy::TyWithLocation (type, var.get_type ()->get_locus ()),
TyTy::TyWithLocation (expr_type,
var.get_expr ()->get_locus ()),
var.get_locus ());
context->insert_type (var.get_mappings (), unified);
}