errors/completeType.cfa:34:1 error: Cannot choose between 2 alternatives for expression Generated Cast of: Applying untyped: Name: *? ...to: Name: x ... to: nothing 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 ... to arguments Variable Expression: x: pointer to instance of struct A with body 0 ... to: nothing (types: void ) Environment: -> 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 ... to arguments Variable Expression: x: pointer to instance of struct B with body 1 ... to: nothing (types: void ) Environment: -> 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 ... to arguments Variable Expression: z: pointer to instance of type T (not function type) (types: void ) Environment: -> instance of type T (not function type) (no widening) Could not satisfy assertion: ?=?: pointer to function ... with parameters reference to instance of type _110_0_T (not function type) instance of type _110_0_T (not function type) ... returning _retval__operator_assign: instance of type _110_0_T (not function type) ... with attributes: Attribute with name: unused