zopffa:
Or am I missing something?
Yes, the properties of a "write one to clear" register.
Do you expect the other bits in the register behave differently than the one you are writing?
By getting the current content of the flags register and writing it back you will clear all those bits
that happen to be set.
Don't you think that you should only reset the bit you use?