Index: tests/array-container/.expect/language-dim-mismatch.nast.txt
===================================================================
--- tests/array-container/.expect/language-dim-mismatch.nast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,10 +1,0 @@
-array-container/language-dim-mismatch.cfa:12:1 error: Type argument given for value parameter: instance of struct SN with body
-... with parameters
-  float
-
-array-container/language-dim-mismatch.cfa:13:1 error: Expression argument given for type parameter: instance of struct ST with body
-... with parameters
-  Constant Expression (42: signed int)
-  ... with resolved type:
-    signed int
-
Index: tests/array-container/.expect/language-dim-mismatch.oast.txt
===================================================================
--- tests/array-container/.expect/language-dim-mismatch.oast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,10 +1,0 @@
-array-container/language-dim-mismatch.cfa:12:1 error: Type argument given for value parameter: instance of struct SN with body 1
-... with parameters
-  float
-
-array-container/language-dim-mismatch.cfa:13:1 error: Expression argument given for type parameter: instance of struct ST with body 1
-... with parameters
-  constant expression (42 42: signed int)
-  with resolved type:
-    signed int
-
Index: tests/array-container/.expect/language-dim-mismatch.txt
===================================================================
--- tests/array-container/.expect/language-dim-mismatch.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
+++ tests/array-container/.expect/language-dim-mismatch.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
@@ -0,0 +1,10 @@
+array-container/language-dim-mismatch.cfa:12:1 error: Type argument given for value parameter: instance of struct SN with body
+... with parameters
+  float
+
+array-container/language-dim-mismatch.cfa:13:1 error: Expression argument given for type parameter: instance of struct ST with body
+... with parameters
+  Constant Expression (42: signed int)
+  ... with resolved type:
+    signed int
+
Index: tests/concurrent/.expect/keywordErrors.nast.txt
===================================================================
--- tests/concurrent/.expect/keywordErrors.nast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,6 +1,0 @@
-concurrent/keywordErrors.cfa:1:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
-thread A with body
-
-concurrent/keywordErrors.cfa:6:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
-thread B with body
-
Index: tests/concurrent/.expect/keywordErrors.oast.txt
===================================================================
--- tests/concurrent/.expect/keywordErrors.oast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,6 +1,0 @@
-concurrent/keywordErrors.cfa:1:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
-thread A: with body 1
-
-concurrent/keywordErrors.cfa:6:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
-thread B: with body 1
-
Index: tests/concurrent/.expect/keywordErrors.txt
===================================================================
--- tests/concurrent/.expect/keywordErrors.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
+++ tests/concurrent/.expect/keywordErrors.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
@@ -0,0 +1,6 @@
+concurrent/keywordErrors.cfa:1:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
+thread A with body
+
+concurrent/keywordErrors.cfa:6:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
+thread B with body
+
Index: tests/concurrent/.expect/mainError.nast.txt
===================================================================
--- tests/concurrent/.expect/mainError.nast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,11 +1,0 @@
-concurrent/mainError.cfa:1:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
-thread Test with body
-
-concurrent/mainError.cfa:2:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
-main: function
-... with parameters
-  reference to instance of struct Test with body
-... returning nothing
- with body
-  Compound Statement:
-
Index: tests/concurrent/.expect/mainError.oast.txt
===================================================================
--- tests/concurrent/.expect/mainError.oast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,11 +1,0 @@
-concurrent/mainError.cfa:1:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
-thread Test: with body 1
-
-concurrent/mainError.cfa:2:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
-main: function
-... with parameters
-  reference to instance of struct Test with body 1
-... returning nothing
-... with body
-  CompoundStmt
-
Index: tests/concurrent/.expect/mainError.txt
===================================================================
--- tests/concurrent/.expect/mainError.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
+++ tests/concurrent/.expect/mainError.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
@@ -0,0 +1,11 @@
+concurrent/mainError.cfa:1:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
+thread Test with body
+
+concurrent/mainError.cfa:2:1 error: thread keyword requires threads to be in scope, add #include <thread.hfa>
+main: function
+... with parameters
+  reference to instance of struct Test with body
+... returning nothing
+ with body
+  Compound Statement:
+
Index: tests/errors/.expect/completeType.arm64.txt
===================================================================
--- tests/errors/.expect/completeType.arm64.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
+++ tests/errors/.expect/completeType.arm64.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
@@ -0,0 +1,259 @@
+errors/completeType.cfa:34:1 error: Cannot choose between 2 alternatives for expression
+Generated Cast of:
+  Applying untyped:
+    Name: *?
+  ...to:
+    Name: x
+
+... to: nothing
+... with resolved type:
+  void Alternatives are:
+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
+            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
+            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 B with body
+        ... with resolved type:
+          pointer to instance of struct B with body
+
+      ... with resolved type:
+        reference to instance of struct B with body
+    ... to: nothing
+    ... with resolved type:
+      void
+  (types:
+    void
+  )
+  Environment:([unbound]DT) -> instance of struct B with body (no widening)
+
+
+
+errors/completeType.cfa:35:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: foo
+...to:
+  Name: v
+
+errors/completeType.cfa:36:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: baz
+...to:
+  Name: v
+
+errors/completeType.cfa:37:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: quux
+...to:
+  Name: v
+
+errors/completeType.cfa:59:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: baz
+...to:
+  Name: y
+
+errors/completeType.cfa:60:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: quux
+...to:
+  Name: y
+
+errors/completeType.cfa:72:1 error: No alternatives with satisfiable assertions for Applying untyped:
+  Name: baz
+...to:
+  Name: z
+
+      Unsatisfiable alternative:
+Cost ( 0, 1, 0, 0, 1, -5, 0 ): Application of
+            Variable Expression: baz: forall
+              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)
+                  instance of type T (not function type)
+                ... returning
+                  instance of type T (not function type)
+
+              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
+            ... with parameters
+              pointer to instance of type T (not function type)
+            ... returning nothing
+
+            ... with resolved type:
+              pointer to forall
+                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)
+                    instance of type [unbound] (not function type)
+                  ... returning
+                    instance of type [unbound] (not function type)
+
+                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
+
+                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)
+                    instance of type [unbound] (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 [unbound] (not function type)
+                  ... returning nothing
+
+                function
+              ... with parameters
+                pointer to instance of type [unbound] (not function type)
+              ... returning nothing
+
+            ... to arguments
+            Variable Expression: z: pointer to instance of type T (not function type)
+            ... with resolved type:
+              pointer to instance of type T (not function type)
+          with 1 pending inference slots
+
+          ... with resolved type:
+            void
+        (types:
+          void
+        )
+        Environment:([unbound]T) -> instance of type T (not function type) (no widening)
+
+      Could not satisfy assertion:
+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)
+            instance of type [unbound] (not function type)
+          ... returning
+            instance of type [unbound] (not function type)
+
Index: tests/errors/.expect/completeType.nast.arm64.txt
===================================================================
--- tests/errors/.expect/completeType.nast.arm64.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,259 +1,0 @@
-errors/completeType.cfa:34:1 error: Cannot choose between 2 alternatives for expression
-Generated Cast of:
-  Applying untyped:
-    Name: *?
-  ...to:
-    Name: x
-
-... to: nothing
-... with resolved type:
-  void Alternatives are:
-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
-            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
-            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 B with body
-        ... with resolved type:
-          pointer to instance of struct B with body
-
-      ... with resolved type:
-        reference to instance of struct B with body
-    ... to: nothing
-    ... with resolved type:
-      void
-  (types:
-    void
-  )
-  Environment:([unbound]DT) -> instance of struct B with body (no widening)
-
-
-
-errors/completeType.cfa:35:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: foo
-...to:
-  Name: v
-
-errors/completeType.cfa:36:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: baz
-...to:
-  Name: v
-
-errors/completeType.cfa:37:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: quux
-...to:
-  Name: v
-
-errors/completeType.cfa:59:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: baz
-...to:
-  Name: y
-
-errors/completeType.cfa:60:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: quux
-...to:
-  Name: y
-
-errors/completeType.cfa:72:1 error: No alternatives with satisfiable assertions for Applying untyped:
-  Name: baz
-...to:
-  Name: z
-
-      Unsatisfiable alternative:
-Cost ( 0, 1, 0, 0, 1, -5, 0 ): Application of
-            Variable Expression: baz: forall
-              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)
-                  instance of type T (not function type)
-                ... returning
-                  instance of type T (not function type)
-
-              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
-            ... with parameters
-              pointer to instance of type T (not function type)
-            ... returning nothing
-
-            ... with resolved type:
-              pointer to forall
-                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)
-                    instance of type [unbound] (not function type)
-                  ... returning
-                    instance of type [unbound] (not function type)
-
-                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
-
-                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)
-                    instance of type [unbound] (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 [unbound] (not function type)
-                  ... returning nothing
-
-                function
-              ... with parameters
-                pointer to instance of type [unbound] (not function type)
-              ... returning nothing
-
-            ... to arguments
-            Variable Expression: z: pointer to instance of type T (not function type)
-            ... with resolved type:
-              pointer to instance of type T (not function type)
-          with 1 pending inference slots
-
-          ... with resolved type:
-            void
-        (types:
-          void
-        )
-        Environment:([unbound]T) -> instance of type T (not function type) (no widening)
-
-      Could not satisfy assertion:
-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)
-            instance of type [unbound] (not function type)
-          ... returning
-            instance of type [unbound] (not function type)
-
Index: tests/errors/.expect/completeType.nast.x64.txt
===================================================================
--- tests/errors/.expect/completeType.nast.x64.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,259 +1,0 @@
-errors/completeType.cfa:34:1 error: Cannot choose between 2 alternatives for expression
-Generated Cast of:
-  Applying untyped:
-    Name: *?
-  ...to:
-    Name: x
-
-... to: nothing
-... with resolved type:
-  void Alternatives are:
-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
-            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
-            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 B with body
-        ... with resolved type:
-          pointer to instance of struct B with body
-
-      ... with resolved type:
-        reference to instance of struct B with body
-    ... to: nothing
-    ... with resolved type:
-      void
-  (types:
-    void
-  )
-  Environment:([unbound]DT) -> instance of struct B with body (no widening)
-
-
-
-errors/completeType.cfa:35:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: foo
-...to:
-  Name: v
-
-errors/completeType.cfa:36:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: baz
-...to:
-  Name: v
-
-errors/completeType.cfa:37:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: quux
-...to:
-  Name: v
-
-errors/completeType.cfa:59:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: baz
-...to:
-  Name: y
-
-errors/completeType.cfa:60:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: quux
-...to:
-  Name: y
-
-errors/completeType.cfa:72:1 error: No alternatives with satisfiable assertions for Applying untyped:
-  Name: baz
-...to:
-  Name: z
-
-      Unsatisfiable alternative:
-Cost ( 0, 1, 0, 0, 1, -5, 0 ): Application of
-            Variable Expression: baz: forall
-              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)
-                  instance of type T (not function type)
-                ... returning
-                  instance of type T (not function type)
-
-              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
-            ... with parameters
-              pointer to instance of type T (not function type)
-            ... returning nothing
-
-            ... with resolved type:
-              pointer to forall
-                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)
-                    instance of type [unbound] (not function type)
-                  ... returning
-                    instance of type [unbound] (not function type)
-
-                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
-
-                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)
-                    instance of type [unbound] (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 [unbound] (not function type)
-                  ... returning nothing
-
-                function
-              ... with parameters
-                pointer to instance of type [unbound] (not function type)
-              ... returning nothing
-
-            ... to arguments
-            Variable Expression: z: pointer to instance of type T (not function type)
-            ... with resolved type:
-              pointer to instance of type T (not function type)
-          with 1 pending inference slots
-
-          ... with resolved type:
-            void
-        (types:
-          void
-        )
-        Environment:([unbound]T) -> instance of type T (not function type) (no widening)
-
-      Could not satisfy assertion:
-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)
-            instance of type [unbound] (not function type)
-          ... returning
-            instance of type [unbound] (not function type)
-
Index: tests/errors/.expect/completeType.nast.x86.txt
===================================================================
--- tests/errors/.expect/completeType.nast.x86.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,259 +1,0 @@
-errors/completeType.cfa:34:1 error: Cannot choose between 2 alternatives for expression
-Generated Cast of:
-  Applying untyped:
-    Name: *?
-  ...to:
-    Name: x
-
-... to: nothing
-... with resolved type:
-  void Alternatives are:
-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
-            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
-            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 B with body
-        ... with resolved type:
-          pointer to instance of struct B with body
-
-      ... with resolved type:
-        reference to instance of struct B with body
-    ... to: nothing
-    ... with resolved type:
-      void
-  (types:
-    void
-  )
-  Environment:([unbound]DT) -> instance of struct B with body (no widening)
-
-
-
-errors/completeType.cfa:35:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: foo
-...to:
-  Name: v
-
-errors/completeType.cfa:36:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: baz
-...to:
-  Name: v
-
-errors/completeType.cfa:37:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: quux
-...to:
-  Name: v
-
-errors/completeType.cfa:59:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: baz
-...to:
-  Name: y
-
-errors/completeType.cfa:60:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
-  Name: quux
-...to:
-  Name: y
-
-errors/completeType.cfa:72:1 error: No alternatives with satisfiable assertions for Applying untyped:
-  Name: baz
-...to:
-  Name: z
-
-      Unsatisfiable alternative:
-Cost ( 0, 1, 0, 0, 1, -5, 0 ): Application of
-            Variable Expression: baz: forall
-              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)
-                  instance of type T (not function type)
-                ... returning
-                  instance of type T (not function type)
-
-              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
-            ... with parameters
-              pointer to instance of type T (not function type)
-            ... returning nothing
-
-            ... with resolved type:
-              pointer to forall
-                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)
-                    instance of type [unbound] (not function type)
-                  ... returning
-                    instance of type [unbound] (not function type)
-
-                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
-
-                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)
-                    instance of type [unbound] (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 [unbound] (not function type)
-                  ... returning nothing
-
-                function
-              ... with parameters
-                pointer to instance of type [unbound] (not function type)
-              ... returning nothing
-
-            ... to arguments
-            Variable Expression: z: pointer to instance of type T (not function type)
-            ... with resolved type:
-              pointer to instance of type T (not function type)
-          with 1 pending inference slots
-
-          ... with resolved type:
-            void
-        (types:
-          void
-        )
-        Environment:([unbound]T) -> instance of type T (not function type) (no widening)
-
-      Could not satisfy assertion:
-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)
-            instance of type [unbound] (not function type)
-          ... returning
-            instance of type [unbound] (not function type)
-
Index: tests/errors/.expect/completeType.oast.arm64.txt
===================================================================
--- tests/errors/.expect/completeType.oast.arm64.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,219 +1,0 @@
-errors/completeType.cfa:34:1 error: Cannot choose between 2 alternatives for expression
-Generated Cast of:
-  Applying untyped:
-    Name: *?
-  ...to:
-    Name: x
-
-... to: nothing
-with resolved type:
-  void  Alternatives are:
-Cost ( 0, 1, 2, 0, 1, -1, 0 ): Generated Cast of:
-      Application of
-        Variable Expression: *?: forall
-          DT: data type
-          function
-        ... with parameters
-          intrinsic pointer to instance of type DT (not function type)
-        ... returning
-          _retval__operator_deref: reference to instance of type DT (not function type)
-          ... with attributes:
-            Attribute with name: unused
-
-
-        with resolved type:
-          pointer to forall
-            [unbound]:data type
-            function
-          ... with parameters
-            intrinsic pointer to instance of type [unbound] (not function type)
-          ... returning
-            _retval__operator_deref: reference to instance of type [unbound] (not function type)
-            ... with attributes:
-              Attribute with name: unused
-
-
-      ... to arguments
-        Variable Expression: x: pointer to instance of struct A with body 0
-        with resolved type:
-          pointer to instance of struct A with body 0
-
-      with resolved type:
-        reference to instance of struct A with body 0
-    ... to: nothing
-    with resolved type:
-      void 
-  (types:
-    void 
-  )
-  Environment:([unbound]) -> instance of struct A with body 0 (no widening)
-
-
-Cost ( 0, 1, 2, 0, 1, -1, 0 ): Generated Cast of:
-      Application of
-        Variable Expression: *?: forall
-          DT: data type
-          function
-        ... with parameters
-          intrinsic pointer to instance of type DT (not function type)
-        ... returning
-          _retval__operator_deref: reference to instance of type DT (not function type)
-          ... with attributes:
-            Attribute with name: unused
-
-
-        with resolved type:
-          pointer to forall
-            [unbound]:data type
-            function
-          ... with parameters
-            intrinsic pointer to instance of type [unbound] (not function type)
-          ... returning
-            _retval__operator_deref: reference to instance of type [unbound] (not function type)
-            ... with attributes:
-              Attribute with name: unused
-
-
-      ... to arguments
-        Variable Expression: x: pointer to instance of struct B with body 1
-        with resolved type:
-          pointer to instance of struct B with body 1
-
-      with resolved type:
-        reference to instance of struct B with body 1
-    ... to: nothing
-    with resolved type:
-      void 
-  (types:
-    void 
-  )
-  Environment:([unbound]) -> instance of struct B with body 1 (no widening)
-
-
-
-errors/completeType.cfa:35:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: foo
-...to:
-  Name: v
-
-errors/completeType.cfa:36:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: baz
-...to:
-  Name: v
-
-errors/completeType.cfa:37:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: quux
-...to:
-  Name: v
-
-errors/completeType.cfa:59:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: baz
-...to:
-  Name: y
-
-errors/completeType.cfa:60:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: quux
-...to:
-  Name: y
-
-errors/completeType.cfa:72:1 error: No alternatives with satisfiable assertions for Applying untyped:
-  Name: baz
-...to:
-  Name: z
-
-      Unsatisfiable alternative:
-Cost ( 0, 1, 0, 0, 1, -5, 0 ): Application of
-            Variable Expression: baz: forall
-              T: sized data type
-              ... with assertions
-                ?=?: pointer to function
-                ... with parameters
-                  reference to instance of type T (not function type)
-                  instance of type T (not function type)
-                ... returning
-                  _retval__operator_assign: instance of type T (not function type)
-                  ... with attributes:
-                    Attribute with name: unused
-
-
-                ?{}: 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
-
-
-              function
-            ... with parameters
-              pointer to instance of type T (not function type)
-            ... returning nothing
-
-            with resolved type:
-              pointer to forall
-                [unbound]:sized data type
-                ... with assertions
-                  ?=?: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                    instance of type [unbound] (not function type)
-                  ... returning
-                    _retval__operator_assign: instance of type [unbound] (not function type)
-                    ... with attributes:
-                      Attribute with name: unused
-
-
-                  ?{}: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                  ... returning nothing
-
-                  ?{}: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                    instance of type [unbound] (not function type)
-                  ... returning nothing
-
-                  ^?{}: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                  ... returning nothing
-
-
-                function
-              ... with parameters
-                pointer to instance of type [unbound] (not function type)
-              ... returning nothing
-
-          ... to arguments
-            Variable Expression: z: pointer to instance of type T (not function type)
-            with resolved type:
-              pointer to instance of type T (not function type)
-
-          with resolved type:
-            void 
-        (types:
-          void 
-        )
-        Environment:([unbound]) -> instance of type T (not function type) (no widening)
-
-      Could not satisfy assertion:
-?=?: pointer to function
-        ... with parameters
-          reference to instance of type [unbound] (not function type)
-          instance of type [unbound] (not function type)
-        ... returning
-          _retval__operator_assign: instance of type [unbound] (not function type)
-          ... with attributes:
-            Attribute with name: unused
-
-
Index: tests/errors/.expect/completeType.oast.x64.txt
===================================================================
--- tests/errors/.expect/completeType.oast.x64.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,219 +1,0 @@
-errors/completeType.cfa:34:1 error: Cannot choose between 2 alternatives for expression
-Generated Cast of:
-  Applying untyped:
-    Name: *?
-  ...to:
-    Name: x
-
-... to: nothing
-with resolved type:
-  void  Alternatives are:
-Cost ( 0, 1, 2, 0, 1, -1, 0 ): Generated Cast of:
-      Application of
-        Variable Expression: *?: forall
-          DT: data type
-          function
-        ... with parameters
-          intrinsic pointer to instance of type DT (not function type)
-        ... returning
-          _retval__operator_deref: reference to instance of type DT (not function type)
-          ... with attributes:
-            Attribute with name: unused
-
-
-        with resolved type:
-          pointer to forall
-            [unbound]:data type
-            function
-          ... with parameters
-            intrinsic pointer to instance of type [unbound] (not function type)
-          ... returning
-            _retval__operator_deref: reference to instance of type [unbound] (not function type)
-            ... with attributes:
-              Attribute with name: unused
-
-
-      ... to arguments
-        Variable Expression: x: pointer to instance of struct A with body 0
-        with resolved type:
-          pointer to instance of struct A with body 0
-
-      with resolved type:
-        reference to instance of struct A with body 0
-    ... to: nothing
-    with resolved type:
-      void 
-  (types:
-    void 
-  )
-  Environment:([unbound]) -> instance of struct A with body 0 (no widening)
-
-
-Cost ( 0, 1, 2, 0, 1, -1, 0 ): Generated Cast of:
-      Application of
-        Variable Expression: *?: forall
-          DT: data type
-          function
-        ... with parameters
-          intrinsic pointer to instance of type DT (not function type)
-        ... returning
-          _retval__operator_deref: reference to instance of type DT (not function type)
-          ... with attributes:
-            Attribute with name: unused
-
-
-        with resolved type:
-          pointer to forall
-            [unbound]:data type
-            function
-          ... with parameters
-            intrinsic pointer to instance of type [unbound] (not function type)
-          ... returning
-            _retval__operator_deref: reference to instance of type [unbound] (not function type)
-            ... with attributes:
-              Attribute with name: unused
-
-
-      ... to arguments
-        Variable Expression: x: pointer to instance of struct B with body 1
-        with resolved type:
-          pointer to instance of struct B with body 1
-
-      with resolved type:
-        reference to instance of struct B with body 1
-    ... to: nothing
-    with resolved type:
-      void 
-  (types:
-    void 
-  )
-  Environment:([unbound]) -> instance of struct B with body 1 (no widening)
-
-
-
-errors/completeType.cfa:35:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: foo
-...to:
-  Name: v
-
-errors/completeType.cfa:36:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: baz
-...to:
-  Name: v
-
-errors/completeType.cfa:37:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: quux
-...to:
-  Name: v
-
-errors/completeType.cfa:59:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: baz
-...to:
-  Name: y
-
-errors/completeType.cfa:60:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: quux
-...to:
-  Name: y
-
-errors/completeType.cfa:72:1 error: No alternatives with satisfiable assertions for Applying untyped:
-  Name: baz
-...to:
-  Name: z
-
-      Unsatisfiable alternative:
-Cost ( 0, 1, 0, 0, 1, -5, 0 ): Application of
-            Variable Expression: baz: forall
-              T: sized data type
-              ... with assertions
-                ?=?: pointer to function
-                ... with parameters
-                  reference to instance of type T (not function type)
-                  instance of type T (not function type)
-                ... returning
-                  _retval__operator_assign: instance of type T (not function type)
-                  ... with attributes:
-                    Attribute with name: unused
-
-
-                ?{}: 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
-
-
-              function
-            ... with parameters
-              pointer to instance of type T (not function type)
-            ... returning nothing
-
-            with resolved type:
-              pointer to forall
-                [unbound]:sized data type
-                ... with assertions
-                  ?=?: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                    instance of type [unbound] (not function type)
-                  ... returning
-                    _retval__operator_assign: instance of type [unbound] (not function type)
-                    ... with attributes:
-                      Attribute with name: unused
-
-
-                  ?{}: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                  ... returning nothing
-
-                  ?{}: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                    instance of type [unbound] (not function type)
-                  ... returning nothing
-
-                  ^?{}: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                  ... returning nothing
-
-
-                function
-              ... with parameters
-                pointer to instance of type [unbound] (not function type)
-              ... returning nothing
-
-          ... to arguments
-            Variable Expression: z: pointer to instance of type T (not function type)
-            with resolved type:
-              pointer to instance of type T (not function type)
-
-          with resolved type:
-            void 
-        (types:
-          void 
-        )
-        Environment:([unbound]) -> instance of type T (not function type) (no widening)
-
-      Could not satisfy assertion:
-?=?: pointer to function
-        ... with parameters
-          reference to instance of type [unbound] (not function type)
-          instance of type [unbound] (not function type)
-        ... returning
-          _retval__operator_assign: instance of type [unbound] (not function type)
-          ... with attributes:
-            Attribute with name: unused
-
-
Index: tests/errors/.expect/completeType.oast.x86.txt
===================================================================
--- tests/errors/.expect/completeType.oast.x86.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,219 +1,0 @@
-errors/completeType.cfa:34:1 error: Cannot choose between 2 alternatives for expression
-Generated Cast of:
-  Applying untyped:
-    Name: *?
-  ...to:
-    Name: x
-
-... to: nothing
-with resolved type:
-  void  Alternatives are:
-Cost ( 0, 1, 2, 0, 1, -1, 0 ): Generated Cast of:
-      Application of
-        Variable Expression: *?: forall
-          DT: data type
-          function
-        ... with parameters
-          intrinsic pointer to instance of type DT (not function type)
-        ... returning
-          _retval__operator_deref: reference to instance of type DT (not function type)
-          ... with attributes:
-            Attribute with name: unused
-
-
-        with resolved type:
-          pointer to forall
-            [unbound]:data type
-            function
-          ... with parameters
-            intrinsic pointer to instance of type [unbound] (not function type)
-          ... returning
-            _retval__operator_deref: reference to instance of type [unbound] (not function type)
-            ... with attributes:
-              Attribute with name: unused
-
-
-      ... to arguments
-        Variable Expression: x: pointer to instance of struct A with body 0
-        with resolved type:
-          pointer to instance of struct A with body 0
-
-      with resolved type:
-        reference to instance of struct A with body 0
-    ... to: nothing
-    with resolved type:
-      void 
-  (types:
-    void 
-  )
-  Environment:([unbound]) -> instance of struct A with body 0 (no widening)
-
-
-Cost ( 0, 1, 2, 0, 1, -1, 0 ): Generated Cast of:
-      Application of
-        Variable Expression: *?: forall
-          DT: data type
-          function
-        ... with parameters
-          intrinsic pointer to instance of type DT (not function type)
-        ... returning
-          _retval__operator_deref: reference to instance of type DT (not function type)
-          ... with attributes:
-            Attribute with name: unused
-
-
-        with resolved type:
-          pointer to forall
-            [unbound]:data type
-            function
-          ... with parameters
-            intrinsic pointer to instance of type [unbound] (not function type)
-          ... returning
-            _retval__operator_deref: reference to instance of type [unbound] (not function type)
-            ... with attributes:
-              Attribute with name: unused
-
-
-      ... to arguments
-        Variable Expression: x: pointer to instance of struct B with body 1
-        with resolved type:
-          pointer to instance of struct B with body 1
-
-      with resolved type:
-        reference to instance of struct B with body 1
-    ... to: nothing
-    with resolved type:
-      void 
-  (types:
-    void 
-  )
-  Environment:([unbound]) -> instance of struct B with body 1 (no widening)
-
-
-
-errors/completeType.cfa:35:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: foo
-...to:
-  Name: v
-
-errors/completeType.cfa:36:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: baz
-...to:
-  Name: v
-
-errors/completeType.cfa:37:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: quux
-...to:
-  Name: v
-
-errors/completeType.cfa:59:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: baz
-...to:
-  Name: y
-
-errors/completeType.cfa:60:1 error: No reasonable alternatives for expression Applying untyped:
-  Name: quux
-...to:
-  Name: y
-
-errors/completeType.cfa:72:1 error: No alternatives with satisfiable assertions for Applying untyped:
-  Name: baz
-...to:
-  Name: z
-
-      Unsatisfiable alternative:
-Cost ( 0, 1, 0, 0, 1, -5, 0 ): Application of
-            Variable Expression: baz: forall
-              T: sized data type
-              ... with assertions
-                ?=?: pointer to function
-                ... with parameters
-                  reference to instance of type T (not function type)
-                  instance of type T (not function type)
-                ... returning
-                  _retval__operator_assign: instance of type T (not function type)
-                  ... with attributes:
-                    Attribute with name: unused
-
-
-                ?{}: 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
-
-
-              function
-            ... with parameters
-              pointer to instance of type T (not function type)
-            ... returning nothing
-
-            with resolved type:
-              pointer to forall
-                [unbound]:sized data type
-                ... with assertions
-                  ?=?: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                    instance of type [unbound] (not function type)
-                  ... returning
-                    _retval__operator_assign: instance of type [unbound] (not function type)
-                    ... with attributes:
-                      Attribute with name: unused
-
-
-                  ?{}: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                  ... returning nothing
-
-                  ?{}: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                    instance of type [unbound] (not function type)
-                  ... returning nothing
-
-                  ^?{}: pointer to function
-                  ... with parameters
-                    reference to instance of type [unbound] (not function type)
-                  ... returning nothing
-
-
-                function
-              ... with parameters
-                pointer to instance of type [unbound] (not function type)
-              ... returning nothing
-
-          ... to arguments
-            Variable Expression: z: pointer to instance of type T (not function type)
-            with resolved type:
-              pointer to instance of type T (not function type)
-
-          with resolved type:
-            void 
-        (types:
-          void 
-        )
-        Environment:([unbound]) -> instance of type T (not function type) (no widening)
-
-      Could not satisfy assertion:
-?=?: pointer to function
-        ... with parameters
-          reference to instance of type [unbound] (not function type)
-          instance of type [unbound] (not function type)
-        ... returning
-          _retval__operator_assign: instance of type [unbound] (not function type)
-          ... with attributes:
-            Attribute with name: unused
-
-
Index: tests/errors/.expect/completeType.x64.txt
===================================================================
--- tests/errors/.expect/completeType.x64.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
+++ tests/errors/.expect/completeType.x64.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
@@ -0,0 +1,259 @@
+errors/completeType.cfa:34:1 error: Cannot choose between 2 alternatives for expression
+Generated Cast of:
+  Applying untyped:
+    Name: *?
+  ...to:
+    Name: x
+
+... to: nothing
+... with resolved type:
+  void Alternatives are:
+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
+            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
+            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 B with body
+        ... with resolved type:
+          pointer to instance of struct B with body
+
+      ... with resolved type:
+        reference to instance of struct B with body
+    ... to: nothing
+    ... with resolved type:
+      void
+  (types:
+    void
+  )
+  Environment:([unbound]DT) -> instance of struct B with body (no widening)
+
+
+
+errors/completeType.cfa:35:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: foo
+...to:
+  Name: v
+
+errors/completeType.cfa:36:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: baz
+...to:
+  Name: v
+
+errors/completeType.cfa:37:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: quux
+...to:
+  Name: v
+
+errors/completeType.cfa:59:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: baz
+...to:
+  Name: y
+
+errors/completeType.cfa:60:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: quux
+...to:
+  Name: y
+
+errors/completeType.cfa:72:1 error: No alternatives with satisfiable assertions for Applying untyped:
+  Name: baz
+...to:
+  Name: z
+
+      Unsatisfiable alternative:
+Cost ( 0, 1, 0, 0, 1, -5, 0 ): Application of
+            Variable Expression: baz: forall
+              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)
+                  instance of type T (not function type)
+                ... returning
+                  instance of type T (not function type)
+
+              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
+            ... with parameters
+              pointer to instance of type T (not function type)
+            ... returning nothing
+
+            ... with resolved type:
+              pointer to forall
+                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)
+                    instance of type [unbound] (not function type)
+                  ... returning
+                    instance of type [unbound] (not function type)
+
+                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
+
+                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)
+                    instance of type [unbound] (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 [unbound] (not function type)
+                  ... returning nothing
+
+                function
+              ... with parameters
+                pointer to instance of type [unbound] (not function type)
+              ... returning nothing
+
+            ... to arguments
+            Variable Expression: z: pointer to instance of type T (not function type)
+            ... with resolved type:
+              pointer to instance of type T (not function type)
+          with 1 pending inference slots
+
+          ... with resolved type:
+            void
+        (types:
+          void
+        )
+        Environment:([unbound]T) -> instance of type T (not function type) (no widening)
+
+      Could not satisfy assertion:
+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)
+            instance of type [unbound] (not function type)
+          ... returning
+            instance of type [unbound] (not function type)
+
Index: tests/errors/.expect/completeType.x86.txt
===================================================================
--- tests/errors/.expect/completeType.x86.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
+++ tests/errors/.expect/completeType.x86.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
@@ -0,0 +1,259 @@
+errors/completeType.cfa:34:1 error: Cannot choose between 2 alternatives for expression
+Generated Cast of:
+  Applying untyped:
+    Name: *?
+  ...to:
+    Name: x
+
+... to: nothing
+... with resolved type:
+  void Alternatives are:
+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
+            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
+            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 B with body
+        ... with resolved type:
+          pointer to instance of struct B with body
+
+      ... with resolved type:
+        reference to instance of struct B with body
+    ... to: nothing
+    ... with resolved type:
+      void
+  (types:
+    void
+  )
+  Environment:([unbound]DT) -> instance of struct B with body (no widening)
+
+
+
+errors/completeType.cfa:35:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: foo
+...to:
+  Name: v
+
+errors/completeType.cfa:36:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: baz
+...to:
+  Name: v
+
+errors/completeType.cfa:37:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: quux
+...to:
+  Name: v
+
+errors/completeType.cfa:59:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: baz
+...to:
+  Name: y
+
+errors/completeType.cfa:60:1 error: Invalid application of existing declaration(s) in expression Applying untyped:
+  Name: quux
+...to:
+  Name: y
+
+errors/completeType.cfa:72:1 error: No alternatives with satisfiable assertions for Applying untyped:
+  Name: baz
+...to:
+  Name: z
+
+      Unsatisfiable alternative:
+Cost ( 0, 1, 0, 0, 1, -5, 0 ): Application of
+            Variable Expression: baz: forall
+              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)
+                  instance of type T (not function type)
+                ... returning
+                  instance of type T (not function type)
+
+              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
+            ... with parameters
+              pointer to instance of type T (not function type)
+            ... returning nothing
+
+            ... with resolved type:
+              pointer to forall
+                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)
+                    instance of type [unbound] (not function type)
+                  ... returning
+                    instance of type [unbound] (not function type)
+
+                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
+
+                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)
+                    instance of type [unbound] (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 [unbound] (not function type)
+                  ... returning nothing
+
+                function
+              ... with parameters
+                pointer to instance of type [unbound] (not function type)
+              ... returning nothing
+
+            ... to arguments
+            Variable Expression: z: pointer to instance of type T (not function type)
+            ... with resolved type:
+              pointer to instance of type T (not function type)
+          with 1 pending inference slots
+
+          ... with resolved type:
+            void
+        (types:
+          void
+        )
+        Environment:([unbound]T) -> instance of type T (not function type) (no widening)
+
+      Could not satisfy assertion:
+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)
+            instance of type [unbound] (not function type)
+          ... returning
+            instance of type [unbound] (not function type)
+
Index: tests/errors/.expect/scope.nast.txt
===================================================================
--- tests/errors/.expect/scope.nast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,9 +1,0 @@
-errors/scope.cfa:2:1 error: duplicate object definition for thisIsAnError: signed int
-errors/scope.cfa:20:1 error: duplicate function definition for butThisIsAnError: function
-... with parameters
-  double
-... returning
-  double
- with body
-  Compound Statement:
-
Index: tests/errors/.expect/scope.oast.txt
===================================================================
--- tests/errors/.expect/scope.oast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,12 +1,0 @@
-errors/scope.cfa:2:1 error: duplicate object definition for thisIsAnError: signed int
-errors/scope.cfa:20:1 error: duplicate function definition for butThisIsAnError: function
-... with parameters
-  double
-... returning
-  _retval_butThisIsAnError: double
-  ... with attributes:
-    Attribute with name: unused
-
-... with body
-  CompoundStmt
-
Index: tests/errors/.expect/scope.txt
===================================================================
--- tests/errors/.expect/scope.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
+++ tests/errors/.expect/scope.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
@@ -0,0 +1,9 @@
+errors/scope.cfa:2:1 error: duplicate object definition for thisIsAnError: signed int
+errors/scope.cfa:20:1 error: duplicate function definition for butThisIsAnError: function
+... with parameters
+  double
+... returning
+  double
+ with body
+  Compound Statement:
+
Index: tests/include/.expect/includes.nast.txt
===================================================================
--- tests/include/.expect/includes.nast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,1 +1,0 @@
-include/includes.cfa:173:25: warning: Compiled
Index: tests/include/.expect/includes.txt
===================================================================
--- tests/include/.expect/includes.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
+++ tests/include/.expect/includes.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
@@ -0,0 +1,1 @@
+include/includes.cfa:173:25: warning: Compiled
Index: tests/raii/.expect/ctor-autogen-ERR1.nast.txt
===================================================================
--- tests/raii/.expect/ctor-autogen-ERR1.nast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,91 +1,0 @@
-raii/ctor-autogen.cfa:102:1 error: Unique best alternative includes deleted identifier in Generated Cast of:
-  Application of
-    Deleted Expression
-      Variable Expression: ?{}: static inline function
-      ... with parameters
-        reference to instance of struct Managed with body
-        signed int
-      ... returning nothing
-
-      ... with resolved type:
-        function
-        ... with parameters
-          reference to instance of struct Managed with body
-          signed int
-        ... returning nothing
-
-      ... deleted by: ?{}: function
-      ... with parameters
-        reference to instance of struct Managed with body
-      ... returning nothing
- with body
-        Compound Statement:
-          Expression Statement:
-            Application of
-              Variable Expression: ?=?: function
-              ... with parameters
-                reference to signed int
-                signed int
-              ... returning
-                signed int
-
-              ... with resolved type:
-                pointer to function
-                ... with parameters
-                  reference to signed int
-                  signed int
-                ... returning
-                  signed int
-
-              ... to arguments
-              Generated Cast of:
-                Member Expression, with field:
-                  x: signed int
-                ... from aggregate:
-                  Generated Cast of:
-                    Variable Expression: m: reference to instance of struct Managed with body
-                    ... with resolved type:
-                      reference to instance of struct Managed with body
-                  ... to:
-                    instance of struct Managed with body
-                  ... with resolved type:
-                    instance of struct Managed with body
-                ... with resolved type:
-                  signed int
-              ... to:
-                reference to signed int
-              ... with resolved type:
-                reference to signed int
-              Generated Cast of:
-                Constant Expression (0: zero_t)
-                ... with resolved type:
-                  zero_t
-              ... to:
-                signed int
-              ... with resolved type:
-                signed int
-
-            ... with resolved type:
-              signed int
-            ... with environment:
-              Types:
-
-
-    ... to arguments
-    Generated Cast of:
-      Variable Expression: x: instance of struct Managed with body
-      ... with resolved type:
-        instance of struct Managed with body
-    ... to:
-      reference to instance of struct Managed with body
-    ... with resolved type:
-      reference to instance of struct Managed with body
-    Constant Expression (123: signed int)
-    ... with resolved type:
-      signed int
-
-  ... with resolved type:
-    void
-... to: nothing
-... with resolved type:
-  void
Index: tests/raii/.expect/ctor-autogen-ERR1.oast.txt
===================================================================
--- tests/raii/.expect/ctor-autogen-ERR1.oast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,98 +1,0 @@
-raii/ctor-autogen.cfa:102:1 error: Unique best alternative includes deleted identifier in Generated Cast of:
-  Application of
-    Deleted Expression
-      Variable Expression: ?{}: static inline function
-      ... with parameters
-        _dst: reference to instance of struct Managed with body 1
-        x: signed int
-      ... returning nothing
-
-      with resolved type:
-        function
-        ... with parameters
-          _dst: reference to instance of struct Managed with body 1
-          x: signed int
-        ... returning nothing
-
-      ... deleted by: ?{}: function
-      ... with parameters
-        m: reference to instance of struct Managed with body 1
-      ... returning nothing
-      ... with body
-        CompoundStmt
-          Expression Statement:
-            Application of
-              Variable Expression: ?=?: function
-              ... with parameters
-                intrinsic reference to signed int
-                intrinsic signed int
-              ... returning
-                _retval__operator_assign: signed int
-                ... with attributes:
-                  Attribute with name: unused
-
-
-              with resolved type:
-                pointer to function
-                ... with parameters
-                  intrinsic reference to signed int
-                  intrinsic signed int
-                ... returning
-                  _retval__operator_assign: signed int
-                  ... with attributes:
-                    Attribute with name: unused
-
-
-            ... to arguments
-              Generated Cast of:
-                Member Expression, with field:
-                  x: signed int
-                ... from aggregate:
-                  Generated Cast of:
-                    Variable Expression: m: reference to instance of struct Managed with body 1
-                    with resolved type:
-                      reference to instance of struct Managed with body 1
-                  ... to:
-                    instance of struct Managed with body 1
-                  with resolved type:
-                    instance of struct Managed with body 1
-                with resolved type:
-                  signed int
-              ... to:
-                reference to signed int
-              with resolved type:
-                reference to signed int
-              Generated Cast of:
-                constant expression (0 0: zero_t)
-                with resolved type:
-                  zero_t
-              ... to:
-                signed int
-              with resolved type:
-                signed int
-
-            with resolved type:
-              signed int
-            ... with environment:
-              Types:
-              Non-types:
-
-
-  ... to arguments
-    Generated Cast of:
-      Variable Expression: x: instance of struct Managed with body 1
-      with resolved type:
-        instance of struct Managed with body 1
-    ... to:
-      reference to instance of struct Managed with body 1
-    with resolved type:
-      reference to instance of struct Managed with body 1
-    constant expression (123 123: signed int)
-    with resolved type:
-      signed int
-
-  with resolved type:
-    void 
-... to: nothing
-with resolved type:
-  void 
Index: tests/raii/.expect/ctor-autogen-ERR1.txt
===================================================================
--- tests/raii/.expect/ctor-autogen-ERR1.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
+++ tests/raii/.expect/ctor-autogen-ERR1.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
@@ -0,0 +1,91 @@
+raii/ctor-autogen.cfa:102:1 error: Unique best alternative includes deleted identifier in Generated Cast of:
+  Application of
+    Deleted Expression
+      Variable Expression: ?{}: static inline function
+      ... with parameters
+        reference to instance of struct Managed with body
+        signed int
+      ... returning nothing
+
+      ... with resolved type:
+        function
+        ... with parameters
+          reference to instance of struct Managed with body
+          signed int
+        ... returning nothing
+
+      ... deleted by: ?{}: function
+      ... with parameters
+        reference to instance of struct Managed with body
+      ... returning nothing
+ with body
+        Compound Statement:
+          Expression Statement:
+            Application of
+              Variable Expression: ?=?: function
+              ... with parameters
+                reference to signed int
+                signed int
+              ... returning
+                signed int
+
+              ... with resolved type:
+                pointer to function
+                ... with parameters
+                  reference to signed int
+                  signed int
+                ... returning
+                  signed int
+
+              ... to arguments
+              Generated Cast of:
+                Member Expression, with field:
+                  x: signed int
+                ... from aggregate:
+                  Generated Cast of:
+                    Variable Expression: m: reference to instance of struct Managed with body
+                    ... with resolved type:
+                      reference to instance of struct Managed with body
+                  ... to:
+                    instance of struct Managed with body
+                  ... with resolved type:
+                    instance of struct Managed with body
+                ... with resolved type:
+                  signed int
+              ... to:
+                reference to signed int
+              ... with resolved type:
+                reference to signed int
+              Generated Cast of:
+                Constant Expression (0: zero_t)
+                ... with resolved type:
+                  zero_t
+              ... to:
+                signed int
+              ... with resolved type:
+                signed int
+
+            ... with resolved type:
+              signed int
+            ... with environment:
+              Types:
+
+
+    ... to arguments
+    Generated Cast of:
+      Variable Expression: x: instance of struct Managed with body
+      ... with resolved type:
+        instance of struct Managed with body
+    ... to:
+      reference to instance of struct Managed with body
+    ... with resolved type:
+      reference to instance of struct Managed with body
+    Constant Expression (123: signed int)
+    ... with resolved type:
+      signed int
+
+  ... with resolved type:
+    void
+... to: nothing
+... with resolved type:
+  void
Index: tests/raii/.expect/memberCtors-ERR1.nast.txt
===================================================================
--- tests/raii/.expect/memberCtors-ERR1.nast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,1 +1,0 @@
-raii/memberCtors.cfa:92:1 error: in ?{}, field a2 used before being constructed
Index: tests/raii/.expect/memberCtors-ERR1.oast.txt
===================================================================
--- tests/raii/.expect/memberCtors-ERR1.oast.txt	(revision b5bec712984f7c93a19d52a84a08277453c65ffa)
+++ 	(revision )
@@ -1,1 +1,0 @@
-raii/memberCtors.cfa:92:1 error: in void ?{}(B &b), field a2 used before being constructed
Index: tests/raii/.expect/memberCtors-ERR1.txt
===================================================================
--- tests/raii/.expect/memberCtors-ERR1.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
+++ tests/raii/.expect/memberCtors-ERR1.txt	(revision e228f46559ffceeb1ba2edf67158058beed42eeb)
@@ -0,0 +1,1 @@
+raii/memberCtors.cfa:92:1 error: in ?{}, field a2 used before being constructed
