about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2014-10-29 10:27:28 -0700
committerKartik K. Agaram <vc@akkartik.com>2014-10-29 10:27:28 -0700
commit6857d6c824c672e441b5e94f52efbe352765860f (patch)
tree9bf27d211f859cd0f37135ca4bab06851ef328e3
parente54ab3f6e31f9619e980f58ee21b76c764e8b542 (diff)
downloadmu-6857d6c824c672e441b5e94f52efbe352765860f.tar.gz
168
-rw-r--r--mu.arc5
1 files changed, 4 insertions, 1 deletions
diff --git a/mu.arc b/mu.arc
index 3b3c9565..19952cac 100644
--- a/mu.arc
+++ b/mu.arc
@@ -405,6 +405,7 @@
                       (assert nil "get-address on invalid type @arg.0 => @base")))
                 new
                   (let type (v arg.0)
+                    (if (no types*.type)  (err "no such type @type"))
                     (if types*.type!array
                       (new-array type (m arg.1))
                       (new-scalar type)))
@@ -512,7 +513,9 @@
         (sum idfn
           (accum yield
             (each elem types*.type!elems
-              (yield sizeof.elem))))))
+              (yield sizeof.elem))))
+      :else
+        (err "no such type @type")))
 
 ;; desugar structured assembly based on blocks