I think I get it now: what I’m doing is passing a single argument by value.
This reply hinted me what is going on.
(My apologies for my ignorance. All this time I thought that one must pass these parameters by pointers. I was not aware that I could simply use this route)
Can someone help me point where I could find more details in the documentation?