Index: tests/errors/.expect/completeType.nast.arm64.txt
===================================================================
--- tests/errors/.expect/completeType.nast.arm64.txt	(revision f7ea791d425f47299b98a429dbb034942bcfcc88)
+++ tests/errors/.expect/completeType.nast.arm64.txt	(revision a195d6e7ec81cd94b0bbc8e0759a1e563886ed6d)
@@ -12,5 +12,5 @@
       Application of
         Variable Expression: *?: forall
-          DT: data type
+          instance of type DT (not function type)
           function
         ... with parameters
@@ -21,5 +21,40 @@
         ... with resolved type:
           pointer to forall
-            [unbound]:data type
+            instance of type [unbound] (not function type)
+            function
+          ... with parameters
+            pointer to instance of type [unbound] (not function type)
+          ... returning
+            reference to instance of type [unbound] (not function type)
+
+        ... to arguments
+        Variable Expression: x: pointer to instance of struct A without body
+        ... with resolved type:
+          pointer to instance of struct A without body
+
+      ... with resolved type:
+        reference to instance of struct A without body
+    ... to: nothing
+    ... with resolved type:
+      void
+  (types:
+    void
+  )
+  Environment:([unbound]DT) -> instance of struct A without body (no widening)
+
+
+Cost ( 0, 1, 2, 0, 1, -1, 0 ): Generated Cast of:
+      Application of
+        Variable Expression: *?: forall
+          instance of type DT (not function type)
+          function
+        ... with parameters
+          pointer to instance of type DT (not function type)
+        ... returning
+          reference to instance of type DT (not function type)
+
+        ... with resolved type:
+          pointer to forall
+            instance of type [unbound] (not function type)
             function
           ... with parameters
@@ -41,40 +76,5 @@
     void
   )
-  Environment:([unbound]) -> instance of struct B with body (no widening)
-
-
-Cost ( 0, 1, 2, 0, 1, -1, 0 ): Generated Cast of:
-      Application of
-        Variable Expression: *?: forall
-          DT: data type
-          function
-        ... with parameters
-          pointer to instance of type DT (not function type)
-        ... returning
-          reference to instance of type DT (not function type)
-
-        ... with resolved type:
-          pointer to forall
-            [unbound]:data type
-            function
-          ... with parameters
-            pointer to instance of type [unbound] (not function type)
-          ... returning
-            reference to instance of type [unbound] (not function type)
-
-        ... to arguments
-        Variable Expression: x: pointer to instance of struct A without body
-        ... with resolved type:
-          pointer to instance of struct A without body
-
-      ... with resolved type:
-        reference to instance of struct A without body
-    ... to: nothing
-    ... with resolved type:
-      void
-  (types:
-    void
-  )
-  Environment:([unbound]) -> instance of struct A without body (no widening)
+  Environment:([unbound]DT) -> instance of struct B with body (no widening)
 
 
@@ -113,7 +113,15 @@
 Cost ( 0, 1, 0, 0, 1, -5, 0 ): Application of
             Variable Expression: baz: forall
-              T: sized data type
-              ... with assertions
-                ?=?: pointer to function
+              instance of type T (not function type)
+              with assertions
+              Variable Expression: ?=?: pointer to function
+              ... with parameters
+                reference to instance of type T (not function type)
+                instance of type T (not function type)
+              ... returning
+                instance of type T (not function type)
+
+              ... with resolved type:
+                pointer to function
                 ... with parameters
                   reference to instance of type T (not function type)
@@ -122,20 +130,38 @@
                   instance of type T (not function type)
 
-                ?{}: pointer to function
-                ... with parameters
-                  reference to instance of type T (not function type)
-                ... returning nothing
-
-                ?{}: pointer to function
-                ... with parameters
-                  reference to instance of type T (not function type)
-                  instance of type T (not function type)
-                ... returning nothing
-
-                ^?{}: pointer to function
-                ... with parameters
-                  reference to instance of type T (not function type)
-                ... returning nothing
-
+              Variable Expression: ?{}: pointer to function
+              ... with parameters
+                reference to instance of type T (not function type)
+              ... returning nothing
+
+              ... with resolved type:
+                pointer to function
+                ... with parameters
+                  reference to instance of type T (not function type)
+                ... returning nothing
+
+              Variable Expression: ?{}: pointer to function
+              ... with parameters
+                reference to instance of type T (not function type)
+                instance of type T (not function type)
+              ... returning nothing
+
+              ... with resolved type:
+                pointer to function
+                ... with parameters
+                  reference to instance of type T (not function type)
+                  instance of type T (not function type)
+                ... returning nothing
+
+              Variable Expression: ^?{}: pointer to function
+              ... with parameters
+                reference to instance of type T (not function type)
+              ... returning nothing
+
+              ... with resolved type:
+                pointer to function
+                ... with parameters
+                  reference to instance of type T (not function type)
+                ... returning nothing
 
               function
@@ -146,7 +172,15 @@
             ... with resolved type:
               pointer to forall
-                [unbound]:sized data type
-                ... with assertions
-                  ?=?: pointer to function
+                instance of type [unbound] (not function type)
+                with assertions
+                Variable Expression: ?=?: pointer to function
+                ... with parameters
+                  reference to instance of type T (not function type)
+                  instance of type T (not function type)
+                ... returning
+                  instance of type T (not function type)
+
+                ... with resolved type:
+                  pointer to function
                   ... with parameters
                     reference to instance of type [unbound] (not function type)
@@ -155,10 +189,23 @@
                     instance of type [unbound] (not function type)
 
-                  ?{}: pointer to function
+                Variable Expression: ?{}: pointer to function
+                ... with parameters
+                  reference to instance of type T (not function type)
+                ... returning nothing
+
+                ... with resolved type:
+                  pointer to function
                   ... with parameters
                     reference to instance of type [unbound] (not function type)
                   ... returning nothing
 
-                  ?{}: pointer to function
+                Variable Expression: ?{}: pointer to function
+                ... with parameters
+                  reference to instance of type T (not function type)
+                  instance of type T (not function type)
+                ... returning nothing
+
+                ... with resolved type:
+                  pointer to function
                   ... with parameters
                     reference to instance of type [unbound] (not function type)
@@ -166,9 +213,14 @@
                   ... returning nothing
 
-                  ^?{}: pointer to function
+                Variable Expression: ^?{}: pointer to function
+                ... with parameters
+                  reference to instance of type T (not function type)
+                ... returning nothing
+
+                ... with resolved type:
+                  pointer to function
                   ... with parameters
                     reference to instance of type [unbound] (not function type)
                   ... returning nothing
-
 
                 function
@@ -188,12 +240,20 @@
           void
         )
-        Environment:([unbound]) -> instance of type T (not function type) (no widening)
+        Environment:([unbound]T) -> instance of type T (not function type) (no widening)
 
       Could not satisfy assertion:
-?=?: pointer to function
+Variable Expression: ?=?: pointer to function
         ... with parameters
-          reference to instance of type [unbound] (not function type)
-          instance of type [unbound] (not function type)
+          reference to instance of type T (not function type)
+          instance of type T (not function type)
         ... returning
-          instance of type [unbound] (not function type)
-
+          instance of type T (not function type)
+
+        ... with resolved type:
+          pointer to function
+          ... with parameters
+            reference to instance of type [unbound] (not function type)
+            instance of type [unbound] (not function type)
+          ... returning
+            instance of type [unbound] (not function type)
+
