# Demonstrating the interaction between 'role_regular' and 'guard'. set g2_trace_ftions 1 class Animal { role_regular f init() { ref Animal:CTOR } protected: guard char* name= "Fido" guard int i= 5 -get_mod "vc" } f int main() {@ Animal a1; Animal a2= a1; Animal a3; a3= a1; a1.init(); a2.init(); a3.init(); printf("a1= %s\n", a1.get_name()); printf("a2= %s\n", a2.get_name()); printf("a3= %s\n", a3.get_name()); return 0; @} c_hdr animals animals.h { sys_inc stdio stdlib iostream ref Animal:H } c_src animals animals.cc { my_inc animals ref Animal:CC main:CC }