This series is part 4 in a series of conversions to replace instances of unsigned char [20] with struct object_id. Most of this series touches the merge-recursive code.
New in this series is the use of Coccinelle (http://coccinelle.lip6.fr/) semantic patches. These semantic patches can make automatic transformations to C source code for cleanup or refactoring reasons. This series introduces a set of transforms for the struct object_id transition, cleans up some existing code with them, and applies a small number of semantic patches to transform parts of the merge-recursive code. Some manual refactoring work follows. Note that in the patches created with the semantic patches, the only manual change was the definition of the struct member. This series is marked as RFC to see if this is a viable technique for further work to ease both the creation and review of patches. Opinions are of course welcomed. The testsuite continues to pass at each step. brian m. carlson (8): Add basic Coccinelle transforms. Apply standard object_id Coccinelle transformations. Convert struct diff_filespec to struct object_id Rename struct diff_filespec's sha1_valid member. merge-recursive: convert struct stage_data to use object_id merge-recursive: convert struct merge_file_info to object_id merge-recursive: convert leaf functions to use struct object_id merge-recursive: convert merge_recursive_generic to object_id bisect.c | 2 +- builtin/blame.c | 6 +- builtin/fast-export.c | 10 +- builtin/merge-recursive.c | 20 +-- builtin/merge.c | 13 +- builtin/reset.c | 4 +- combine-diff.c | 14 +-- diff.c | 95 +++++++------- diffcore-break.c | 4 +- diffcore-rename.c | 16 +-- diffcore.h | 4 +- line-log.c | 12 +- merge-recursive.c | 310 ++++++++++++++++++++++++---------------------- merge-recursive.h | 6 +- notes-merge.c | 42 +++---- refs/files-backend.c | 4 +- standard.cocci | 83 +++++++++++++ submodule.c | 4 +- wt-status.c | 3 +- 19 files changed, 376 insertions(+), 276 deletions(-) create mode 100644 standard.cocci -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html