Can someone give me an advise : what am I doing wrong here. I have an interactive ILE/C program, below is a part of it: #pragma map(additem, "H56HSR") #pragma linkage(additem, OS) void additem(char *) ; int main(void) .... additem("Y31ARR") ; .... return(1) ; I do not know, what exactly is inside H56HSR, it is a sort of dispatcher, but I know, that it calls my program Y31ARR, that is in *LIBL and after executing it, returns control back to the calling program. Y31ARR is also ILE/C program written by me. It also ends with return(0) statement. It all works fine, but if I change something in Y31ARR and recompile it, then the changes take effect only after I signoff and signon again. My last achievment was impressive for me: I issued a command RCLRSC (*CALLER) after my program completed. Then recompiled Y31ARR and everything worked fine. I am not very good in understanding, what's going on, but I have a "feeling" that his object -Y31ARR - stays in memory, and when it is called again, OS/400 actually routes a call to the memory instance, rather than create a new instance from the disk version. But the question is - what should I do to get rid of this situation? Any advise will be highly appreciated, Regards, Jevgeni.