Subject: [PATCH] submodule.h: use a named enum for RECURSE_SUBMODULES_*

From: "Philippe Blain via GitGitGadget" <[email-masked]>
Date: Wed, 05 Jan 2022 19:26:21 +0000

From: Philippe Blain <[email-masked]>

Using a named enum allows casting an integer to the enum type in both
GDB and LLDB:

    (gdb) p (enum diff_submodule_format) options->submodule_format
    $1 = DIFF_SUBMODULE_LOG

    (lldb) p (diff_submodule_format) options->submodule_format
    (diff_submodule_format) $1 = DIFF_SUBMODULE_LOG

In LLDB, it's also required to cast in the reversed direction, i.e.
cast an enum constant into its corresponding integer:

    (lldb) p (int) diff_submodule_format::DIFF_SUBMODULE_SHORT
    (int) $0 = 0

Name the enum listing the different RECURSE_SUBMODULES_* modes, to make
debugging easier.

Signed-off-by: Philippe Blain <[email-masked]>
---
    submodule.h: use a named enum for RECURSE_SUBMODULES_*

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1111%2Fphil-blain%2Fsubmodule-recurse-enum-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1111/phil-blain/submodule-recurse-enum-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/1111

 submodule.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/submodule.h b/submodule.h
index 6bd2c99fd99..55cf6f01d0c 100644
--- a/submodule.h
+++ b/submodule.h
@@ -13,7 +13,7 @@ struct repository;
 struct string_list;
 struct strbuf;
 
-enum {
+enum submodule_recurse_mode {
 	RECURSE_SUBMODULES_ONLY = -5,
 	RECURSE_SUBMODULES_CHECK = -4,
 	RECURSE_SUBMODULES_ERROR = -3,

base-commit: 2ae0a9cb8298185a94e5998086f380a355dd8907
-- 
gitgitgadget