Sir, - For those who are not yet sufficiently confused, may I remind you that, in terms of food, the verb "to have" can mean "to eat". This would render "To have your cake and eat it" identical to "To eat your cake and have it".
On the other hand, if the verb "to have" is taken to mean "to keep" it is rather inapt when applied to cakes which tend to be thrown out, rather than kept, if not eaten. Mind you, though unsavoury, it is possible to "throw out your cake and eat it" and also "to eat your cake and throw it out particularly if you've kept it". - Yours, etc.,
Carrickhill Drive,
Portmarnock, Co. Dublin.