T: type
  with assertions
    x: function
        with parameters
          instance of type T (not function type) 
        returning 
          instance of type T (not function type) 


y: function
    with parameters
      t: instance of type T (not function type) 
    returning 
      instance of type T (not function type) 
    with body 
      CompoundStmt
        Declaration of t_instance: instance of type T (not function type) 
                  Return Statement, returning: Applying untyped: 
    Name: x
...to: 
    Name: t



*?: forall
      T: type
        with assertions
          ?=?: function
              with parameters
                pointer to instance of type T (not function type) 
                instance of type T (not function type) 
              returning 
                instance of type T (not function type) 


    function
    with parameters
      pointer to instance of type T (not function type) 
    returning 
      lvalue instance of type T (not function type) 

?++: function
    with parameters
      pointer to signed int 
    returning 
      signed int 

?=?: function
    with parameters
      pointer to signed int 
      signed int 
    returning 
      signed int 

?=?: forall
      DT: incomplete type
    function
    with parameters
      pointer to pointer to instance of type DT (not function type) 
      pointer to instance of type DT (not function type) 
    returning 
      pointer to instance of type DT (not function type) 

U: type for pointer to signed int 
x: function
    with parameters
      u: instance of type U (not function type) 
    returning 
      instance of type U (not function type) 
    with body 
      CompoundStmt
        Declaration of u_instance: instance of type U (not function type) with initializer 
          Simple Initializer:             Name: u

                  Expression Statement:
            Applying untyped: 
                Name: ?++
            ...to: 
                Address of:
                  Applying untyped: 
                      Name: *?
                  ...to: 
                      Name: u

                  Return Statement, returning: Name: u



break_abstraction: function
    with parameters
      u: instance of type U (not function type) 
    returning 
      pointer to signed int 
    with body 
      CompoundStmt
                  Return Statement, returning: Name: u



