Thank you very much,
kcott, for your explanations, many thanks also to others who provided answers, especially
Anonymous Monk for the very informative links provided and
Eily for having initially pointed that undefined behavior in this thread. Since I certainly don't want to be bitten by unexpected undefined behavior, I will definitely make sure never to use such "conditional my" constructs in the future (and will remove them from existing code if I find any). Again, thanks to all monks who provided information on this subject.