everest% CC des5.C record2.C
des5.C:
record2.C:
everest% 

everest% a.out
Alternate Constructor: this=ffffffadc0, s=(100121fa,"S"),str=(10013010,"S")
Destructor: this=ffffffadc0, str=(10013010,"S")
Identify S: id: this=ffffffadd0, str=(10013010,"S")
Calling foo
Alternate Constructor: this=ffffffad60, s=(100121f8,"R"),str=(10013010,"R")
Destructor: this=ffffffad60, str=(10013010,"R")

Identify T: id: this=ffffffadc8, str=(10013010,"R")

Identify R: id: this=ffffffad68, str=(10013010,"R")
Destructor: this=ffffffad68, str=(10013010,"R")
Destructor: this=ffffffadc8, str=(10013010,"R")
Returned from foo


End of main()

Destructor: this=ffffffadd0, str=(10013010,"R")
everest% 


everest% g++ des5.C record2.C
everest% 

everest% a.out
Alternate Constructor: this=7fff2ee8, s=(100000a4,"S"),str=(100002f0,"S")
Identify S: id: this=7fff2ee8, str=(100002f0,"S")
Calling foo
Alternate Constructor: this=7fff2eb8, s=(10000080,"R"),str=(10000300,"R")

Identify T: id: this=7fff2ed0, str=(100002f0,"S")

Identify R: id: this=7fff2eb8, str=(10000300,"R")
Destructor: this=7fff2eb8, str=(10000300,"R")
Destructor: this=7fff2ed0, str=(100002f0,"S")
Returned from foo


End of main()

Destructor: this=7fff2ee8, str=(100002f0,"S")
everest% 
