shithub: mc

Download patch

ref: 32abfabfaf95942558a590a307432b499f392ea9
parent: 905f4d10a78e7e2f6eb849cf373b14cd78c87d73
author: Ori Bernstein <ori@eigenstate.org>
date: Sat Feb 9 16:48:50 EST 2019

Work towards removing the streq check.

--- a/parse/infer.c
+++ b/parse/infer.c
@@ -2735,14 +2735,19 @@
 		settype(n, tyfix(n, type(n), 0));
 		switch (n->lit.littype) {
 		case Lfunc:	typesub(n->lit.fnval, noerr);	break;
-		case Lint:	checkrange(n);
-		default: break;
+		case Lint:	checkrange(n);			break;
+		default: 					break;
 		}
 		break;
-	case Nimpl: putimpl(curstab(), n);
-	case Nname:
-	case Nuse: break;
-	case Nnone:	die("Nnone should not be seen as node type!");	break;
+	case Nimpl:
+		pushenv(n->impl.env);
+		putimpl(curstab(), n);
+		popenv(n->impl.env);
+	case Nname: case Nuse:
+		break;
+	case Nnone:
+		die("Nnone should not be seen as node type!");
+		break;
 	}
 }