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 pointer to instance of type DT (not function type) ... returning reference to instance of type DT (not function type) ... to arguments Variable Expression: x: pointer to instance of struct B with body ... to: nothing (types: void ) Environment:( _99_2_DT ) -> instance of struct B with body (no widening) Cost ( 0, 1, 2, 0, 1, -1, 0 ): Generated Cast of: Application of Variable Expression: *?: forall DT: data type function ... with parameters pointer to instance of type DT (not function type) ... returning reference to instance of type DT (not function type) ... to arguments Variable Expression: x: pointer to instance of struct A without body ... to: nothing (types: void ) Environment:( _99_2_DT ) -> instance of struct A without 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 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 instance of type T (not function type) ?{}: pointer to function ... with parameters reference to instance of type T (not function type) ... returning nothing ?{}: pointer to function ... with parameters reference to instance of type T (not function type) instance of type T (not function type) ... returning nothing ^?{}: pointer to function ... with parameters reference to instance of type T (not function type) ... returning nothing 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) with 1 pending inference slots (types: void ) Environment:( _118_0_T ) -> instance of type T (not function type) (no widening) Could not satisfy assertion: ?=?: pointer to function ... with parameters reference to instance of type _118_0_T (not function type) instance of type _118_0_T (not function type) ... returning instance of type _118_0_T (not function type)