Listing 2: The C translation of Listing 1
void *_new();
void _delete();
void *_vec_new();
void _vec_delete();
void exit();
struct Frog
{
int _Frog_MyColor ;
};
struct Frog *_Frog__ctor (/* struct Frog* , int */);
struct Frog *_Frog__ctor (this , _au0_C )register struct Frog *this ;
int _au0_C ;
{
if (this == 0 )
this = (struct Frog *)_new ( (long )(sizeof (struct Frog))) ;
this -> _Frog_MyColor = _au0_C ;
return this ;
}
int main ()
{
{
struct Frog *_au1_pKermit = 0 ;
_au1_pKermit = (struct Frog *)_Frog__ctor ( (struct Frog *)0 , 2) ;
}
exit ( 0 );
}