Patrik Stridvall ps@leissner.se writes:
Concerning some parts of my warnings patch that was partly rejected I disagree with the rejection. The patch in question is in warnings_rejected.diff. Note the field "u" is a union. But perhaps you know and rejected it for other reasons?
I know it is a union; I thought it was one of these cases that would get fixed by -DSTRICT, but now I see that it is a slightly different problem. I'll apply it.
If you accept all the strict_*.diff patches, perhaps we should consider adding -DSTRICT as a permanent flag? It removes the HOOKPROC/TIMERPROC warnings that is not possible to fix otherwise.
If we do that can just do s/DECLARE_OLD_HANDLE/DECLARE_HANDLE/ on the handle types on by one and fix the warnings.
That's precisely the plan, and it is just the opposite of what you are doing with your patch (you are turning DECLARE_HANDLE back into DECLARE_OLD_HANDLE). Yes you get a number of warnings if you turn -DSTRICT on, most of them should disappear once the conversion is complete; fixing them before that is a waste of time. This is the reason why -DSTRICT is not the default yet. Read bug report #90, Francois explains everything there.
And don't forget the number one rule of the -DSTRICT conversion is: *no* *typecasts*. If you have to add typecasts something is wrong.