Another weapon to attack the problem is introducing in the DMD back-end an optimization (already present in LLVM, but I think not used on default), merging of functions with the same body (leaving just a jump as the body of the removed function, to keep their function pointers distinct).

Why not drop that requirement? What is the use case of different function pointers for different but equivalent functions? Does anyone depend on this?

Reply via email to