// './cfa-cpp -nc < simplePoly.c' forall( type T, type U | { T f( T, U ); } ) T q( T t, U u ) { return f( t, u ); // return t; } int f( int, double* ); void g( void ) { int y; double x; // if( y ) q( 3, &x ); }