Thread (1 message) 1 message, 1 author, 2016-06-15

Re: GNU diff and git diff - difference on myers algorithm?

From: Jacob Keller <hidden>
Date: 2016-06-15 23:05:46
Also in: cocci

On Thu, Jul 16, 2015 at 9:22 PM, Jacob Keller [off-list ref] wrote:
On Thu, Jul 16, 2015 at 12:07 PM, Luis R. Rodriguez
[off-list ref] wrote:
quoted
On Fri, Jun 12, 2015 at 11:52 AM, Luis R. Rodriguez
[off-list ref] wrote:
quoted
OK wells I'm curious about more research / effort when trying to
evaluate a diff with two seprate but adjoining preprocessor directives
and if anyone has implemented an optimizaiton option to let the diff
generator join them.

For example, to let it infer that:
--- a/test.c
+++ b/test.c
@@ -10,8 +10,6 @@ int main(int argc, char *argv[])

 #ifdef FOO
        a = 4;
-#endif /* FOO */
-#ifdef FOO
        a = 5;
 #endif /* FOO */
is possible.
Anyone familiar if any tool exists today that would optimize this? Is
anyone working on it? Would git be a good place for such a thing? I'd
consider it as an option to optimize a diff. This for example is
extremely useful for us working with Coccinelle where we have a tool
writing code for us, while such an optimization might be useful to
Coccinelle it would seem like a rather generic feature, its just not
clear to me where to give such a tool a proper home.

 Luis
I do not understand exactly what would be optimized in this case?

In any regards, that's not a diff transformation, that is a code
transformation, and I would suggest starting with Coccinelle and
seeing if you can get that to do what you want.
http://coccinelle.lip6.fr/

Regards,
Jake
I misread your comment. Coccinelle is a tool that could probably be
coerced into doing this, but this is not a diff optimization unless I
am completely understanding it. This is a code transformation concept,
and doesn't have much to do with finding differences or code changes.
My above comment is correct, but I don't think this belongs in diff
parsing, but rather as part of something like Coccinelle

Regards,
Jake
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help