Index: src/ResolvExpr/Alternative.cc
===================================================================
--- src/ResolvExpr/Alternative.cc	(revision 73ac10e1f458e8c55037fb5326876a41ed58a82b)
+++ src/ResolvExpr/Alternative.cc	(revision aeb8f70056004f741c9dcb505f8cb1cecb640ff1)
@@ -105,4 +105,5 @@
 
 	Alternative::~Alternative() {
+		for ( AssertionItem& n : need ) { delete n.decl; }
 		delete expr;
 	}
Index: src/ResolvExpr/ResolveAssertions.cc
===================================================================
--- src/ResolvExpr/ResolveAssertions.cc	(revision 73ac10e1f458e8c55037fb5326876a41ed58a82b)
+++ src/ResolvExpr/ResolveAssertions.cc	(revision aeb8f70056004f741c9dcb505f8cb1cecb640ff1)
@@ -275,5 +275,5 @@
 					std::move(newNeed), std::move(newOpenVars), crntResnSlot );
 			} else {
-				//delete adjType;
+				delete adjType;
 			}
 		}
@@ -396,4 +396,5 @@
 						Cost resCost = coster.get( compat );
 						auto it = found.emplace( SymTab::Mangler::mangleType( resType ), resCost );
+						delete resType;
 						if ( it.second == false && it.first->second < resCost ) continue;
 
