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)

