alternatives before prune:
Cost ( 0, 0, 0 ): constant expression 3 signed int (types:
    signed int 
)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
alternatives before prune:
Cost ( 0, 0, 0 ): Cast of:
constant expression 3 signed int 
to:
  signed int 
(types:
    signed int 
)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
nameExpr is 0
alternatives before prune:
Cost ( 0, 0, 0 ): constant expression 3 signed int (types:
    signed int 
)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
alternatives before prune:
Cost ( 0, 0, 0 ): Cast of:
constant expression 3 signed int 
to:
  signed int 
(types:
    signed int 
)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
nameExpr is f1
decl is f1: function
  with parameters
    i: signed int with initializer 
      Simple Initializer:         Cast of:
constant expression 3 signed int 
        to:
          signed int 
        with environment:
          Types:
          Non-types:

    j: pointer to signed int with initializer 
      Simple Initializer:         Name: 0

  returning 
    signed int 
  with body 
    CompoundStmt

newExpr is Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 


alternatives before prune:
Cost ( 0, 0, 0 ): Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 

(types:
    pointer to function
        with parameters
          i: signed int with initializer 
            Simple Initializer:               Cast of:
constant expression 3 signed int 
              to:
                signed int 
              with environment:
                Types:
                Non-types:

          j: pointer to signed int with initializer 
            Simple Initializer:               Name: 0

        returning 
          signed int 

)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
working on alternative: 
        Cost ( 0, 0, 0 ):         Variable Expression: f1: function
            with parameters
              i: signed int with initializer 
                Simple Initializer:                   Cast of:
constant expression 3 signed int 
                  to:
                    signed int 
                  with environment:
                    Types:
                    Non-types:

              j: pointer to signed int with initializer 
                Simple Initializer:                   Name: 0

            returning 
              signed int 

(types:
            pointer to function
                with parameters
                  i: signed int with initializer 
                    Simple Initializer:                       Cast of:
constant expression 3 signed int 
                      to:
                        signed int 
                      with environment:
                        Types:
                        Non-types:

                  j: pointer to signed int with initializer 
                    Simple Initializer:                       Name: 0

                returning 
                  signed int 

)
        Environment: 
nameExpr is f1
decl is f1: function
  with parameters
    i: signed int with initializer 
      Simple Initializer:         Cast of:
constant expression 3 signed int 
        to:
          signed int 
        with environment:
          Types:
          Non-types:

    j: pointer to signed int with initializer 
      Simple Initializer:         Name: 0

  returning 
    signed int 
  with body 
    CompoundStmt

newExpr is Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 


alternatives before prune:
Cost ( 0, 0, 0 ): Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 

(types:
    pointer to function
        with parameters
          i: signed int with initializer 
            Simple Initializer:               Cast of:
constant expression 3 signed int 
              to:
                signed int 
              with environment:
                Types:
                Non-types:

          j: pointer to signed int with initializer 
            Simple Initializer:               Name: 0

        returning 
          signed int 

)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
alternatives before prune:
Cost ( 0, 0, 0 ): constant expression 3 signed int (types:
    signed int 
)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
findSubExprs
Cost ( 0, 0, 0 ): constant expression 3 signed int (types:
    signed int 
)
Environment: 

working on alternative: 
        Cost ( 0, 0, 0 ):         Variable Expression: f1: function
            with parameters
              i: signed int with initializer 
                Simple Initializer:                   Cast of:
constant expression 3 signed int 
                  to:
                    signed int 
                  with environment:
                    Types:
                    Non-types:

              j: pointer to signed int with initializer 
                Simple Initializer:                   Name: 0

            returning 
              signed int 

(types:
            pointer to function
                with parameters
                  i: signed int with initializer 
                    Simple Initializer:                       Cast of:
constant expression 3 signed int 
                      to:
                        signed int 
                      with environment:
                        Types:
                        Non-types:

                  j: pointer to signed int with initializer 
                    Simple Initializer:                       Name: 0

                returning 
                  signed int 

)
        Environment: 
formal type is signed int 
actual type is signed int 
nameExpr is f1
decl is f1: function
  with parameters
    i: signed int with initializer 
      Simple Initializer:         Cast of:
constant expression 3 signed int 
        to:
          signed int 
        with environment:
          Types:
          Non-types:

    j: pointer to signed int with initializer 
      Simple Initializer:         Name: 0

  returning 
    signed int 
  with body 
    CompoundStmt

newExpr is Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 


alternatives before prune:
Cost ( 0, 0, 0 ): Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 

(types:
    pointer to function
        with parameters
          i: signed int with initializer 
            Simple Initializer:               Cast of:
constant expression 3 signed int 
              to:
                signed int 
              with environment:
                Types:
                Non-types:

          j: pointer to signed int with initializer 
            Simple Initializer:               Name: 0

        returning 
          signed int 

)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
alternatives before prune:
Cost ( 0, 0, 0 ): constant expression 3 signed int (types:
    signed int 
)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
findSubExprs
Cost ( 0, 0, 0 ): constant expression 3 signed int (types:
    signed int 
)
Environment: 

working on alternative: 
        Cost ( 0, 0, 0 ):         Variable Expression: f1: function
            with parameters
              i: signed int with initializer 
                Simple Initializer:                   Cast of:
constant expression 3 signed int 
                  to:
                    signed int 
                  with environment:
                    Types:
                    Non-types:

              j: pointer to signed int with initializer 
                Simple Initializer:                   Name: 0

            returning 
              signed int 

(types:
            pointer to function
                with parameters
                  i: signed int with initializer 
                    Simple Initializer:                       Cast of:
constant expression 3 signed int 
                      to:
                        signed int 
                      with environment:
                        Types:
                        Non-types:

                  j: pointer to signed int with initializer 
                    Simple Initializer:                       Name: 0

                returning 
                  signed int 

)
        Environment: 
formal type is signed int 
actual type is signed int 
nameExpr is f1
decl is f1: function
  with parameters
    i: signed int with initializer 
      Simple Initializer:         Cast of:
constant expression 3 signed int 
        to:
          signed int 
        with environment:
          Types:
          Non-types:

    j: pointer to signed int with initializer 
      Simple Initializer:         Name: 0

  returning 
    signed int 
  with body 
    CompoundStmt

newExpr is Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 


alternatives before prune:
Cost ( 0, 0, 0 ): Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 

(types:
    pointer to function
        with parameters
          i: signed int with initializer 
            Simple Initializer:               Cast of:
constant expression 3 signed int 
              to:
                signed int 
              with environment:
                Types:
                Non-types:

          j: pointer to signed int with initializer 
            Simple Initializer:               Name: 0

        returning 
          signed int 

)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
alternatives before prune:
Cost ( 0, 0, 0 ): constant expression 3 signed int (types:
    signed int 
)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
findSubExprs
Cost ( 0, 0, 0 ): constant expression 3 signed int (types:
    signed int 
)
Environment: 

nameExpr is 0
nameExpr is f1
decl is f1: function
  with parameters
    i: signed int with initializer 
      Simple Initializer:         Cast of:
constant expression 3 signed int 
        to:
          signed int 
        with environment:
          Types:
          Non-types:

    j: pointer to signed int with initializer 
      Simple Initializer:         Name: 0

  returning 
    signed int 
  with body 
    CompoundStmt

newExpr is Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 


alternatives before prune:
Cost ( 0, 0, 0 ): Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 

(types:
    pointer to function
        with parameters
          i: signed int with initializer 
            Simple Initializer:               Cast of:
constant expression 3 signed int 
              to:
                signed int 
              with environment:
                Types:
                Non-types:

          j: pointer to signed int with initializer 
            Simple Initializer:               Name: 0

        returning 
          signed int 

)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
alternatives before prune:
Cost ( 0, 0, 0 ): constant expression 3 signed int (types:
    signed int 
)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
findSubExprs
Cost ( 0, 0, 0 ): constant expression 3 signed int (types:
    signed int 
)
Environment: 

nameExpr is 0
nameExpr is f1
decl is f1: function
  with parameters
    i: signed int with initializer 
      Simple Initializer:         Cast of:
constant expression 3 signed int 
        to:
          signed int 
        with environment:
          Types:
          Non-types:

    j: pointer to signed int with initializer 
      Simple Initializer:         Name: 0

  returning 
    signed int 
  with body 
    CompoundStmt

newExpr is Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 


alternatives before prune:
Cost ( 0, 0, 0 ): Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 

(types:
    pointer to function
        with parameters
          i: signed int with initializer 
            Simple Initializer:               Cast of:
constant expression 3 signed int 
              to:
                signed int 
              with environment:
                Types:
                Non-types:

          j: pointer to signed int with initializer 
            Simple Initializer:               Name: 0

        returning 
          signed int 

)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
nameExpr is 0
nameExpr is f1
decl is f1: function
  with parameters
    i: signed int with initializer 
      Simple Initializer:         Cast of:
constant expression 3 signed int 
        to:
          signed int 
        with environment:
          Types:
          Non-types:

    j: pointer to signed int with initializer 
      Simple Initializer:         Name: 0

  returning 
    signed int 
  with body 
    CompoundStmt

newExpr is Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 


alternatives before prune:
Cost ( 0, 0, 0 ): Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 

(types:
    pointer to function
        with parameters
          i: signed int with initializer 
            Simple Initializer:               Cast of:
constant expression 3 signed int 
              to:
                signed int 
              with environment:
                Types:
                Non-types:

          j: pointer to signed int with initializer 
            Simple Initializer:               Name: 0

        returning 
          signed int 

)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
alternatives before prune:
Cost ( 0, 0, 0 ): constant expression 3 signed int with designator:  Name: i
(types:
    signed int 
)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
findSubExprs
Cost ( 0, 0, 0 ): constant expression 3 signed int with designator:  Name: i
(types:
    signed int 
)
Environment: 

nameExpr is 0
nameExpr is f1
decl is f1: function
  with parameters
    i: signed int with initializer 
      Simple Initializer:         Cast of:
constant expression 3 signed int 
        to:
          signed int 
        with environment:
          Types:
          Non-types:

    j: pointer to signed int with initializer 
      Simple Initializer:         Name: 0

  returning 
    signed int 
  with body 
    CompoundStmt

newExpr is Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 


alternatives before prune:
Cost ( 0, 0, 0 ): Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 

(types:
    pointer to function
        with parameters
          i: signed int with initializer 
            Simple Initializer:               Cast of:
constant expression 3 signed int 
              to:
                signed int 
              with environment:
                Types:
                Non-types:

          j: pointer to signed int with initializer 
            Simple Initializer:               Name: 0

        returning 
          signed int 

)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
nameExpr is 0
nameExpr is f1
decl is f1: function
  with parameters
    i: signed int with initializer 
      Simple Initializer:         Cast of:
constant expression 3 signed int 
        to:
          signed int 
        with environment:
          Types:
          Non-types:

    j: pointer to signed int with initializer 
      Simple Initializer:         Name: 0

  returning 
    signed int 
  with body 
    CompoundStmt

newExpr is Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 


alternatives before prune:
Cost ( 0, 0, 0 ): Variable Expression: f1: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int with initializer 
        Simple Initializer:           Name: 0

    returning 
      signed int 

(types:
    pointer to function
        with parameters
          i: signed int with initializer 
            Simple Initializer:               Cast of:
constant expression 3 signed int 
              to:
                signed int 
              with environment:
                Types:
                Non-types:

          j: pointer to signed int with initializer 
            Simple Initializer:               Name: 0

        returning 
          signed int 

)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
nameExpr is f2
decl is f2: function
  with parameters
    i: signed int with initializer 
      Simple Initializer:         Cast of:
constant expression 3 signed int 
        to:
          signed int 
        with environment:
          Types:
          Non-types:

    j: pointer to signed int 
  returning 
    signed int 
    signed int 
  with body 
    CompoundStmt

newExpr is Variable Expression: f2: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int 
    returning 
      signed int 
      signed int 


alternatives before prune:
Cost ( 0, 0, 0 ): Variable Expression: f2: function
    with parameters
      i: signed int with initializer 
        Simple Initializer:           Cast of:
constant expression 3 signed int 
          to:
            signed int 
          with environment:
            Types:
            Non-types:

      j: pointer to signed int 
    returning 
      signed int 
      signed int 

(types:
    pointer to function
        with parameters
          i: signed int with initializer 
            Simple Initializer:               Cast of:
constant expression 3 signed int 
              to:
                signed int 
              with environment:
                Types:
                Non-types:

          j: pointer to signed int 
        returning 
          signed int 
          signed int 

)
Environment: 

there are 1 alternatives before elimination
there are 1 alternatives after elimination
working on alternative: 
        Cost ( 0, 0, 0 ):         Variable Expression: f2: function
            with parameters
              i: signed int with initializer 
                Simple Initializer:                   Cast of:
constant expression 3 signed int 
                  to:
                    signed int 
                  with environment:
                    Types:
                    Non-types:

              j: pointer to signed int 
            returning 
              signed int 
              signed int 

(types:
            pointer to function
                with parameters
                  i: signed int with initializer 
                    Simple Initializer:                       Cast of:
constant expression 3 signed int 
                      to:
                        signed int 
                      with environment:
                        Types:
                        Non-types:

                  j: pointer to signed int 
                returning 
                  signed int 
                  signed int 

)
        Environment: 
Error: No reasonable alternatives for expression Name: 0

Error: No reasonable alternatives for expression Applying untyped: 
    Name: f1
...to: 

Error: No reasonable alternatives for expression Applying untyped: 
    Name: f1
...to: 
constant expression 3 signed int 
Error: No reasonable alternatives for expression Applying untyped: 
    Name: f1
...to: 
constant expression 3 signed int 
Error: No reasonable alternatives for expression Name: 0

Error: No reasonable alternatives for expression Name: 0
with designator:  Name: j

Error: No reasonable alternatives for expression Name: 0
with designator:  Name: j

Error: No reasonable alternatives for expression Name: 0
with designator:  Name: j

Error: No reasonable alternatives for expression Name: 0
with designator:  Name: j

Error: No reasonable alternatives for expression Applying untyped: 
    Name: f2
...to: 
with designator:  Tuple:
          Name: j

          Name: i


