shithub: mc

Download patch

ref: 9b2d009acc6761a5b9328a69773e20f5ee530b15
parent: bdddb0fe46050fc184e0146819e9840611a0e44d
author: Ori Bernstein <orib@google.com>
date: Fri Aug 3 13:20:53 EDT 2012

Don't die if types have no constraints.

    An empty constraint set is equivalent to no constraints implemented,
    not a segfault. Treat it as such.

--- a/parse/infer.c
+++ b/parse/infer.c
@@ -298,7 +298,7 @@
         if (!a->cstrs)
             a->cstrs = mkbs();
         setcstr(a, c);
-    } else if (!bshas(a->cstrs, c->cid)) {
+    } else if (!a->cstrs || !bshas(a->cstrs, c->cid)) {
             fatal(ctx->line, "%s needs %s near %s", tystr(a), c->name, ctxstr(st, ctx));
     }
 }
--