Emily Shaffer [off-list ref] writes:
Start using a named initializer list for SUBMODULE_UPDATE_CLONE_INIT, as
The feature has its own name. Instead of coming up with your own
name for it, let's say "designated initializers".
-#define SUBMODULE_UPDATE_CLONE_INIT {0, MODULE_LIST_INIT, 0, \
- SUBMODULE_UPDATE_STRATEGY_INIT, 0, 0, -1, STRING_LIST_INIT_DUP, 0, 0, \
- NULL, NULL, NULL, \
- NULL, 0, 0, 0, NULL, 0, 0, 1}
+#define SUBMODULE_UPDATE_CLONE_INIT { \
+ .list = MODULE_LIST_INIT, \
+ .update = SUBMODULE_UPDATE_STRATEGY_INIT, \
+ .recommend_shallow = -1, \
+ .references = STRING_LIST_INIT_DUP, \
+ .max_jobs = 1 \
+}
This does make it read more easily. If you ended the last field
with trailing comma, that would have been even better as a future
proofing ;-)