From: Stefan Sperling Subject: Re: diff -p function prototypes regression To: Theo Buehler Cc: gameoftrees@openbsd.org, Tom Jones Date: Tue, 22 Aug 2023 12:48:32 +0200 On Tue, Aug 22, 2023 at 11:57:48AM +0200, Theo Buehler wrote: > diff -p is a hack, but it usually has helpful additional info. And I am not trying to keep -p stuck in the way it is now. But the change we applied did have unintended unfortunate side effects. I assume FreeBSD's diff now has the same problems as you spotted in Got diff. BSD diff -p has problems in many areas. Another issue are goto labels in C: https://got.gameoftrees.org/?action=diff&commit=4e3e8516c9205eb93e0203a60fd74e271f567adb&headref=HEAD&path=got.git If more thought and work was put into heuristics used by -p it could be improved much further. For example, if -p took information about the file's type into account (based on file name extensions that appear in the diff) then language-specific heuristics could be implemented. Heuristics for C could then be tweaked without affecting results for other types of files such as Makefiles. And such work needs to be done in a way that doesn't cause regressions, which is the hard part...