Index: src/ResolvExpr/ResolveAssertions.cc
===================================================================
--- src/ResolvExpr/ResolveAssertions.cc	(revision 954c954fd6522dace325fb95ef0cfd3247c319c3)
+++ src/ResolvExpr/ResolveAssertions.cc	(revision 2fb35df396c012cc3908fbb4d946ba80cad0ce88)
@@ -277,5 +277,12 @@
 			const DeclarationWithType * candidate = cdata.id;
 
-			// build independent unification context for candidate
+			// ignore deleted candidates.
+			// NOTE: this behavior is different from main resolver.
+			// further investigations might be needed to determine
+			// if we should implement the same rule here
+			// (i.e. error if unique best match is deleted)
+			if (candidate->isDeleted) continue;
+
+			// build independent unification context. for candidate
 			AssertionSet have, newNeed;
 			TypeEnvironment newEnv{ resn.alt.env };
Index: src/ResolvExpr/SatisfyAssertions.cpp
===================================================================
--- src/ResolvExpr/SatisfyAssertions.cpp	(revision 954c954fd6522dace325fb95ef0cfd3247c319c3)
+++ src/ResolvExpr/SatisfyAssertions.cpp	(revision 2fb35df396c012cc3908fbb4d946ba80cad0ce88)
@@ -170,4 +170,11 @@
 			const ast::DeclWithType * candidate = cdata.id;
 
+			// ignore deleted candidates.
+			// NOTE: this behavior is different from main resolver.
+			// further investigations might be needed to determine
+			// if we should implement the same rule here
+			// (i.e. error if unique best match is deleted)
+			if (candidate->isDeleted) continue;
+
 			// build independent unification context for candidate
 			ast::AssertionSet have, newNeed;
