int ?=?( int &, int );
forall(DT &) DT * ?=?( DT *&, DT * );

void a() {
	forall( T ) void f( T );
	void g( forall( U ) void p( U ) );
	g( f );
}

void g() {
	void h( int *null );
	forall( T ) T id( T );
//	forall( dtype T ) T *0;
//	int 0;
	h( id( id( id( 0 ) ) ) );
}

// Local Variables: //
// tab-width: 4 //
// End: //
