Merge branch 'dl/no-extern-in-func-decl'
authorJunio C Hamano <gitster@pobox.com>
Mon, 13 May 2019 14:50:32 +0000 (23:50 +0900)
committerJunio C Hamano <gitster@pobox.com>
Mon, 13 May 2019 14:50:32 +0000 (23:50 +0900)
Mechanically and systematically drop "extern" from function
declarlation.

* dl/no-extern-in-func-decl:
*.[ch]: manually align parameter lists
*.[ch]: remove extern from function declarations using sed
*.[ch]: remove extern from function declarations using spatch

15 files changed:
1  2 
advice.h
archive.h
blame.h
builtin.h
cache.h
commit.h
config.h
dir.h
git-compat-util.h
http.h
khash.h
object-store.h
refs.h
remote.h
tree-walk.h
diff --cc advice.h
Simple merge
diff --cc archive.h
Simple merge
diff --cc blame.h
Simple merge
diff --cc builtin.h
index ac552ff0d2ce1cfb2d0036cc599d54311ebd3fb7,a6d3c58fddab82d2aa98c1fa55e4f7758804ee70..ec7e0954c4c8a1da896392bd28158abb74667898
+++ b/builtin.h
@@@ -123,131 -123,131 +123,131 @@@ int fmt_merge_msg(struct strbuf *in, st
   * You should most likely use a default of 0 or 1. "Punt" (-1) could be useful
   * to be able to fall back to some historical compatibility name.
   */
extern void setup_auto_pager(const char *cmd, int def);
+ void setup_auto_pager(const char *cmd, int def);
  
extern int is_builtin(const char *s);
+ int is_builtin(const char *s);
  
- extern int cmd_add(int argc, const char **argv, const char *prefix);
- extern int cmd_am(int argc, const char **argv, const char *prefix);
- extern int cmd_annotate(int argc, const char **argv, const char *prefix);
- extern int cmd_apply(int argc, const char **argv, const char *prefix);
- extern int cmd_archive(int argc, const char **argv, const char *prefix);
- extern int cmd_bisect__helper(int argc, const char **argv, const char *prefix);
- extern int cmd_blame(int argc, const char **argv, const char *prefix);
- extern int cmd_branch(int argc, const char **argv, const char *prefix);
- extern int cmd_bundle(int argc, const char **argv, const char *prefix);
- extern int cmd_cat_file(int argc, const char **argv, const char *prefix);
- extern int cmd_checkout(int argc, const char **argv, const char *prefix);
- extern int cmd_checkout_index(int argc, const char **argv, const char *prefix);
- extern int cmd_check_attr(int argc, const char **argv, const char *prefix);
- extern int cmd_check_ignore(int argc, const char **argv, const char *prefix);
- extern int cmd_check_mailmap(int argc, const char **argv, const char *prefix);
- extern int cmd_check_ref_format(int argc, const char **argv, const char *prefix);
- extern int cmd_cherry(int argc, const char **argv, const char *prefix);
- extern int cmd_cherry_pick(int argc, const char **argv, const char *prefix);
- extern int cmd_clone(int argc, const char **argv, const char *prefix);
- extern int cmd_clean(int argc, const char **argv, const char *prefix);
- extern int cmd_column(int argc, const char **argv, const char *prefix);
- extern int cmd_commit(int argc, const char **argv, const char *prefix);
- extern int cmd_commit_graph(int argc, const char **argv, const char *prefix);
- extern int cmd_commit_tree(int argc, const char **argv, const char *prefix);
- extern int cmd_config(int argc, const char **argv, const char *prefix);
- extern int cmd_count_objects(int argc, const char **argv, const char *prefix);
- extern int cmd_credential(int argc, const char **argv, const char *prefix);
- extern int cmd_describe(int argc, const char **argv, const char *prefix);
- extern int cmd_diff_files(int argc, const char **argv, const char *prefix);
- extern int cmd_diff_index(int argc, const char **argv, const char *prefix);
- extern int cmd_diff(int argc, const char **argv, const char *prefix);
- extern int cmd_diff_tree(int argc, const char **argv, const char *prefix);
- extern int cmd_difftool(int argc, const char **argv, const char *prefix);
- extern int cmd_fast_export(int argc, const char **argv, const char *prefix);
- extern int cmd_fetch(int argc, const char **argv, const char *prefix);
- extern int cmd_fetch_pack(int argc, const char **argv, const char *prefix);
- extern int cmd_fmt_merge_msg(int argc, const char **argv, const char *prefix);
- extern int cmd_for_each_ref(int argc, const char **argv, const char *prefix);
- extern int cmd_format_patch(int argc, const char **argv, const char *prefix);
- extern int cmd_fsck(int argc, const char **argv, const char *prefix);
- extern int cmd_gc(int argc, const char **argv, const char *prefix);
- extern int cmd_get_tar_commit_id(int argc, const char **argv, const char *prefix);
- extern int cmd_grep(int argc, const char **argv, const char *prefix);
- extern int cmd_hash_object(int argc, const char **argv, const char *prefix);
- extern int cmd_help(int argc, const char **argv, const char *prefix);
- extern int cmd_index_pack(int argc, const char **argv, const char *prefix);
- extern int cmd_init_db(int argc, const char **argv, const char *prefix);
- extern int cmd_interpret_trailers(int argc, const char **argv, const char *prefix);
- extern int cmd_log(int argc, const char **argv, const char *prefix);
- extern int cmd_log_reflog(int argc, const char **argv, const char *prefix);
- extern int cmd_ls_files(int argc, const char **argv, const char *prefix);
- extern int cmd_ls_tree(int argc, const char **argv, const char *prefix);
- extern int cmd_ls_remote(int argc, const char **argv, const char *prefix);
- extern int cmd_mailinfo(int argc, const char **argv, const char *prefix);
- extern int cmd_mailsplit(int argc, const char **argv, const char *prefix);
- extern int cmd_merge(int argc, const char **argv, const char *prefix);
- extern int cmd_merge_base(int argc, const char **argv, const char *prefix);
- extern int cmd_merge_index(int argc, const char **argv, const char *prefix);
- extern int cmd_merge_ours(int argc, const char **argv, const char *prefix);
- extern int cmd_merge_file(int argc, const char **argv, const char *prefix);
- extern int cmd_merge_recursive(int argc, const char **argv, const char *prefix);
- extern int cmd_merge_tree(int argc, const char **argv, const char *prefix);
- extern int cmd_mktag(int argc, const char **argv, const char *prefix);
- extern int cmd_mktree(int argc, const char **argv, const char *prefix);
- extern int cmd_multi_pack_index(int argc, const char **argv, const char *prefix);
- extern int cmd_mv(int argc, const char **argv, const char *prefix);
- extern int cmd_name_rev(int argc, const char **argv, const char *prefix);
- extern int cmd_notes(int argc, const char **argv, const char *prefix);
- extern int cmd_pack_objects(int argc, const char **argv, const char *prefix);
- extern int cmd_pack_redundant(int argc, const char **argv, const char *prefix);
- extern int cmd_patch_id(int argc, const char **argv, const char *prefix);
- extern int cmd_prune(int argc, const char **argv, const char *prefix);
- extern int cmd_prune_packed(int argc, const char **argv, const char *prefix);
- extern int cmd_pull(int argc, const char **argv, const char *prefix);
- extern int cmd_push(int argc, const char **argv, const char *prefix);
- extern int cmd_range_diff(int argc, const char **argv, const char *prefix);
- extern int cmd_read_tree(int argc, const char **argv, const char *prefix);
- extern int cmd_rebase(int argc, const char **argv, const char *prefix);
- extern int cmd_rebase__interactive(int argc, const char **argv, const char *prefix);
- extern int cmd_receive_pack(int argc, const char **argv, const char *prefix);
- extern int cmd_reflog(int argc, const char **argv, const char *prefix);
- extern int cmd_remote(int argc, const char **argv, const char *prefix);
- extern int cmd_remote_ext(int argc, const char **argv, const char *prefix);
- extern int cmd_remote_fd(int argc, const char **argv, const char *prefix);
- extern int cmd_repack(int argc, const char **argv, const char *prefix);
- extern int cmd_rerere(int argc, const char **argv, const char *prefix);
- extern int cmd_reset(int argc, const char **argv, const char *prefix);
- extern int cmd_rev_list(int argc, const char **argv, const char *prefix);
- extern int cmd_rev_parse(int argc, const char **argv, const char *prefix);
- extern int cmd_revert(int argc, const char **argv, const char *prefix);
- extern int cmd_rm(int argc, const char **argv, const char *prefix);
- extern int cmd_send_pack(int argc, const char **argv, const char *prefix);
- extern int cmd_shortlog(int argc, const char **argv, const char *prefix);
- extern int cmd_show(int argc, const char **argv, const char *prefix);
- extern int cmd_show_branch(int argc, const char **argv, const char *prefix);
- extern int cmd_show_index(int argc, const char **argv, const char *prefix);
- extern int cmd_status(int argc, const char **argv, const char *prefix);
- extern int cmd_stash(int argc, const char **argv, const char *prefix);
- extern int cmd_stripspace(int argc, const char **argv, const char *prefix);
- extern int cmd_submodule__helper(int argc, const char **argv, const char *prefix);
- extern int cmd_symbolic_ref(int argc, const char **argv, const char *prefix);
- extern int cmd_tag(int argc, const char **argv, const char *prefix);
- extern int cmd_tar_tree(int argc, const char **argv, const char *prefix);
- extern int cmd_unpack_file(int argc, const char **argv, const char *prefix);
- extern int cmd_unpack_objects(int argc, const char **argv, const char *prefix);
- extern int cmd_update_index(int argc, const char **argv, const char *prefix);
- extern int cmd_update_ref(int argc, const char **argv, const char *prefix);
- extern int cmd_update_server_info(int argc, const char **argv, const char *prefix);
- extern int cmd_upload_archive(int argc, const char **argv, const char *prefix);
- extern int cmd_upload_archive_writer(int argc, const char **argv, const char *prefix);
- extern int cmd_upload_pack(int argc, const char **argv, const char *prefix);
- extern int cmd_var(int argc, const char **argv, const char *prefix);
- extern int cmd_verify_commit(int argc, const char **argv, const char *prefix);
- extern int cmd_verify_tag(int argc, const char **argv, const char *prefix);
- extern int cmd_version(int argc, const char **argv, const char *prefix);
- extern int cmd_whatchanged(int argc, const char **argv, const char *prefix);
- extern int cmd_worktree(int argc, const char **argv, const char *prefix);
- extern int cmd_write_tree(int argc, const char **argv, const char *prefix);
- extern int cmd_verify_pack(int argc, const char **argv, const char *prefix);
- extern int cmd_show_ref(int argc, const char **argv, const char *prefix);
- extern int cmd_pack_refs(int argc, const char **argv, const char *prefix);
- extern int cmd_replace(int argc, const char **argv, const char *prefix);
+ int cmd_add(int argc, const char **argv, const char *prefix);
+ int cmd_am(int argc, const char **argv, const char *prefix);
+ int cmd_annotate(int argc, const char **argv, const char *prefix);
+ int cmd_apply(int argc, const char **argv, const char *prefix);
+ int cmd_archive(int argc, const char **argv, const char *prefix);
+ int cmd_bisect__helper(int argc, const char **argv, const char *prefix);
+ int cmd_blame(int argc, const char **argv, const char *prefix);
+ int cmd_branch(int argc, const char **argv, const char *prefix);
+ int cmd_bundle(int argc, const char **argv, const char *prefix);
+ int cmd_cat_file(int argc, const char **argv, const char *prefix);
+ int cmd_checkout(int argc, const char **argv, const char *prefix);
+ int cmd_checkout_index(int argc, const char **argv, const char *prefix);
+ int cmd_check_attr(int argc, const char **argv, const char *prefix);
+ int cmd_check_ignore(int argc, const char **argv, const char *prefix);
+ int cmd_check_mailmap(int argc, const char **argv, const char *prefix);
+ int cmd_check_ref_format(int argc, const char **argv, const char *prefix);
+ int cmd_cherry(int argc, const char **argv, const char *prefix);
+ int cmd_cherry_pick(int argc, const char **argv, const char *prefix);
+ int cmd_clone(int argc, const char **argv, const char *prefix);
+ int cmd_clean(int argc, const char **argv, const char *prefix);
+ int cmd_column(int argc, const char **argv, const char *prefix);
+ int cmd_commit(int argc, const char **argv, const char *prefix);
+ int cmd_commit_graph(int argc, const char **argv, const char *prefix);
+ int cmd_commit_tree(int argc, const char **argv, const char *prefix);
+ int cmd_config(int argc, const char **argv, const char *prefix);
+ int cmd_count_objects(int argc, const char **argv, const char *prefix);
+ int cmd_credential(int argc, const char **argv, const char *prefix);
+ int cmd_describe(int argc, const char **argv, const char *prefix);
+ int cmd_diff_files(int argc, const char **argv, const char *prefix);
+ int cmd_diff_index(int argc, const char **argv, const char *prefix);
+ int cmd_diff(int argc, const char **argv, const char *prefix);
+ int cmd_diff_tree(int argc, const char **argv, const char *prefix);
+ int cmd_difftool(int argc, const char **argv, const char *prefix);
+ int cmd_fast_export(int argc, const char **argv, const char *prefix);
+ int cmd_fetch(int argc, const char **argv, const char *prefix);
+ int cmd_fetch_pack(int argc, const char **argv, const char *prefix);
+ int cmd_fmt_merge_msg(int argc, const char **argv, const char *prefix);
+ int cmd_for_each_ref(int argc, const char **argv, const char *prefix);
+ int cmd_format_patch(int argc, const char **argv, const char *prefix);
+ int cmd_fsck(int argc, const char **argv, const char *prefix);
+ int cmd_gc(int argc, const char **argv, const char *prefix);
+ int cmd_get_tar_commit_id(int argc, const char **argv, const char *prefix);
+ int cmd_grep(int argc, const char **argv, const char *prefix);
+ int cmd_hash_object(int argc, const char **argv, const char *prefix);
+ int cmd_help(int argc, const char **argv, const char *prefix);
+ int cmd_index_pack(int argc, const char **argv, const char *prefix);
+ int cmd_init_db(int argc, const char **argv, const char *prefix);
+ int cmd_interpret_trailers(int argc, const char **argv, const char *prefix);
+ int cmd_log(int argc, const char **argv, const char *prefix);
+ int cmd_log_reflog(int argc, const char **argv, const char *prefix);
+ int cmd_ls_files(int argc, const char **argv, const char *prefix);
+ int cmd_ls_tree(int argc, const char **argv, const char *prefix);
+ int cmd_ls_remote(int argc, const char **argv, const char *prefix);
+ int cmd_mailinfo(int argc, const char **argv, const char *prefix);
+ int cmd_mailsplit(int argc, const char **argv, const char *prefix);
+ int cmd_merge(int argc, const char **argv, const char *prefix);
+ int cmd_merge_base(int argc, const char **argv, const char *prefix);
+ int cmd_merge_index(int argc, const char **argv, const char *prefix);
+ int cmd_merge_ours(int argc, const char **argv, const char *prefix);
+ int cmd_merge_file(int argc, const char **argv, const char *prefix);
+ int cmd_merge_recursive(int argc, const char **argv, const char *prefix);
+ int cmd_merge_tree(int argc, const char **argv, const char *prefix);
+ int cmd_mktag(int argc, const char **argv, const char *prefix);
+ int cmd_mktree(int argc, const char **argv, const char *prefix);
+ int cmd_multi_pack_index(int argc, const char **argv, const char *prefix);
+ int cmd_mv(int argc, const char **argv, const char *prefix);
+ int cmd_name_rev(int argc, const char **argv, const char *prefix);
+ int cmd_notes(int argc, const char **argv, const char *prefix);
+ int cmd_pack_objects(int argc, const char **argv, const char *prefix);
+ int cmd_pack_redundant(int argc, const char **argv, const char *prefix);
+ int cmd_patch_id(int argc, const char **argv, const char *prefix);
+ int cmd_prune(int argc, const char **argv, const char *prefix);
+ int cmd_prune_packed(int argc, const char **argv, const char *prefix);
+ int cmd_pull(int argc, const char **argv, const char *prefix);
+ int cmd_push(int argc, const char **argv, const char *prefix);
+ int cmd_range_diff(int argc, const char **argv, const char *prefix);
+ int cmd_read_tree(int argc, const char **argv, const char *prefix);
+ int cmd_rebase(int argc, const char **argv, const char *prefix);
+ int cmd_rebase__interactive(int argc, const char **argv, const char *prefix);
+ int cmd_receive_pack(int argc, const char **argv, const char *prefix);
+ int cmd_reflog(int argc, const char **argv, const char *prefix);
+ int cmd_remote(int argc, const char **argv, const char *prefix);
+ int cmd_remote_ext(int argc, const char **argv, const char *prefix);
+ int cmd_remote_fd(int argc, const char **argv, const char *prefix);
+ int cmd_repack(int argc, const char **argv, const char *prefix);
+ int cmd_rerere(int argc, const char **argv, const char *prefix);
+ int cmd_reset(int argc, const char **argv, const char *prefix);
+ int cmd_rev_list(int argc, const char **argv, const char *prefix);
+ int cmd_rev_parse(int argc, const char **argv, const char *prefix);
+ int cmd_revert(int argc, const char **argv, const char *prefix);
+ int cmd_rm(int argc, const char **argv, const char *prefix);
+ int cmd_send_pack(int argc, const char **argv, const char *prefix);
 -int cmd_serve(int argc, const char **argv, const char *prefix);
+ int cmd_shortlog(int argc, const char **argv, const char *prefix);
+ int cmd_show(int argc, const char **argv, const char *prefix);
+ int cmd_show_branch(int argc, const char **argv, const char *prefix);
+ int cmd_show_index(int argc, const char **argv, const char *prefix);
+ int cmd_status(int argc, const char **argv, const char *prefix);
++int cmd_stash(int argc, const char **argv, const char *prefix);
+ int cmd_stripspace(int argc, const char **argv, const char *prefix);
+ int cmd_submodule__helper(int argc, const char **argv, const char *prefix);
+ int cmd_symbolic_ref(int argc, const char **argv, const char *prefix);
+ int cmd_tag(int argc, const char **argv, const char *prefix);
+ int cmd_tar_tree(int argc, const char **argv, const char *prefix);
+ int cmd_unpack_file(int argc, const char **argv, const char *prefix);
+ int cmd_unpack_objects(int argc, const char **argv, const char *prefix);
+ int cmd_update_index(int argc, const char **argv, const char *prefix);
+ int cmd_update_ref(int argc, const char **argv, const char *prefix);
+ int cmd_update_server_info(int argc, const char **argv, const char *prefix);
+ int cmd_upload_archive(int argc, const char **argv, const char *prefix);
+ int cmd_upload_archive_writer(int argc, const char **argv, const char *prefix);
+ int cmd_upload_pack(int argc, const char **argv, const char *prefix);
+ int cmd_var(int argc, const char **argv, const char *prefix);
+ int cmd_verify_commit(int argc, const char **argv, const char *prefix);
+ int cmd_verify_tag(int argc, const char **argv, const char *prefix);
+ int cmd_version(int argc, const char **argv, const char *prefix);
+ int cmd_whatchanged(int argc, const char **argv, const char *prefix);
+ int cmd_worktree(int argc, const char **argv, const char *prefix);
+ int cmd_write_tree(int argc, const char **argv, const char *prefix);
+ int cmd_verify_pack(int argc, const char **argv, const char *prefix);
+ int cmd_show_ref(int argc, const char **argv, const char *prefix);
+ int cmd_pack_refs(int argc, const char **argv, const char *prefix);
+ int cmd_replace(int argc, const char **argv, const char *prefix);
  
  #endif
diff --cc cache.h
index 67cc2e1806ab4fabd4b34c0e1b4ca5cd1abafd82,9f15fee85fcd5e863ce406e61ce218155adf5a60..fa8ede9a2d6441842f49740482bb74f6c23c1a5d
+++ b/cache.h
@@@ -1382,34 -1378,21 +1382,34 @@@ enum get_oid_result 
                       */
  };
  
 -int get_oid(const char *str, struct object_id *oid);
 -int get_oid_commit(const char *str, struct object_id *oid);
 -int get_oid_committish(const char *str, struct object_id *oid);
 -int get_oid_tree(const char *str, struct object_id *oid);
 -int get_oid_treeish(const char *str, struct object_id *oid);
 -int get_oid_blob(const char *str, struct object_id *oid);
 -void maybe_die_on_misspelt_object_name(const char *name, const char *prefix);
 +int repo_get_oid(struct repository *r, const char *str, struct object_id *oid);
 +int get_oidf(struct object_id *oid, const char *fmt, ...);
 +int repo_get_oid_commit(struct repository *r, const char *str, struct object_id *oid);
 +int repo_get_oid_committish(struct repository *r, const char *str, struct object_id *oid);
 +int repo_get_oid_tree(struct repository *r, const char *str, struct object_id *oid);
 +int repo_get_oid_treeish(struct repository *r, const char *str, struct object_id *oid);
 +int repo_get_oid_blob(struct repository *r, const char *str, struct object_id *oid);
 +int repo_get_oid_mb(struct repository *r, const char *str, struct object_id *oid);
 +void maybe_die_on_misspelt_object_name(struct repository *repo,
 +                                     const char *name,
 +                                     const char *prefix);
- extern enum get_oid_result get_oid_with_context(struct repository *repo, const char *str,
-                               unsigned flags, struct object_id *oid,
-                               struct object_context *oc);
+ enum get_oid_result get_oid_with_context(struct repository *repo, const char *str,
+                                        unsigned flags, struct object_id *oid,
+                                        struct object_context *oc);
  
 +#define get_oid(str, oid)             repo_get_oid(the_repository, str, oid)
 +#define get_oid_commit(str, oid)      repo_get_oid_commit(the_repository, str, oid)
 +#define get_oid_committish(str, oid)  repo_get_oid_committish(the_repository, str, oid)
 +#define get_oid_tree(str, oid)                repo_get_oid_tree(the_repository, str, oid)
 +#define get_oid_treeish(str, oid)     repo_get_oid_treeish(the_repository, str, oid)
 +#define get_oid_blob(str, oid)                repo_get_oid_blob(the_repository, str, oid)
 +#define get_oid_mb(str, oid)          repo_get_oid_mb(the_repository, str, oid)
 +
  typedef int each_abbrev_fn(const struct object_id *oid, void *);
 -int for_each_abbrev(const char *prefix, each_abbrev_fn, void *);
 +int repo_for_each_abbrev(struct repository *r, const char *prefix, each_abbrev_fn, void *);
 +#define for_each_abbrev(prefix, fn, data) repo_for_each_abbrev(the_repository, prefix, fn, data)
  
extern int set_disambiguate_hint_config(const char *var, const char *value);
+ int set_disambiguate_hint_config(const char *var, const char *value);
  
  /*
   * Try to read a SHA1 in hexadecimal format from the 40 characters
@@@ -1485,30 -1468,24 +1485,30 @@@ int parse_oid_hex(const char *hex, stru
  #define INTERPRET_BRANCH_LOCAL (1<<0)
  #define INTERPRET_BRANCH_REMOTE (1<<1)
  #define INTERPRET_BRANCH_HEAD (1<<2)
 -int interpret_branch_name(const char *str, int len, struct strbuf *,
 -                        unsigned allowed);
 -int get_oid_mb(const char *str, struct object_id *oid);
 +int repo_interpret_branch_name(struct repository *r,
 +                             const char *str, int len,
 +                             struct strbuf *buf,
 +                             unsigned allowed);
 +#define interpret_branch_name(str, len, buf, allowed) \
 +      repo_interpret_branch_name(the_repository, str, len, buf, allowed)
  
extern int validate_headref(const char *ref);
+ int validate_headref(const char *ref);
  
extern int base_name_compare(const char *name1, int len1, int mode1, const char *name2, int len2, int mode2);
extern int df_name_compare(const char *name1, int len1, int mode1, const char *name2, int len2, int mode2);
extern int name_compare(const char *name1, size_t len1, const char *name2, size_t len2);
extern int cache_name_stage_compare(const char *name1, int len1, int stage1, const char *name2, int len2, int stage2);
+ int base_name_compare(const char *name1, int len1, int mode1, const char *name2, int len2, int mode2);
+ int df_name_compare(const char *name1, int len1, int mode1, const char *name2, int len2, int mode2);
+ int name_compare(const char *name1, size_t len1, const char *name2, size_t len2);
+ int cache_name_stage_compare(const char *name1, int len1, int stage1, const char *name2, int len2, int stage2);
  
extern void *read_object_with_reference(const struct object_id *oid,
-                                       const char *required_type,
-                                       unsigned long *size,
-                                       struct object_id *oid_ret);
+ void *read_object_with_reference(const struct object_id *oid,
+                                const char *required_type,
+                                unsigned long *size,
+                                struct object_id *oid_ret);
  
 -struct object *peel_to_type(const char *name, int namelen,
 -                          struct object *o, enum object_type);
 +struct object *repo_peel_to_type(struct repository *r,
 +                               const char *name, int namelen,
 +                               struct object *o, enum object_type);
 +#define peel_to_type(name, namelen, obj, type) \
 +      repo_peel_to_type(the_repository, name, namelen, obj, type)
  
  enum date_mode_type {
        DATE_NORMAL = 0,
@@@ -1562,24 -1539,20 +1562,24 @@@ enum want_ident 
        WANT_COMMITTER_IDENT
  };
  
- extern const char *git_author_info(int);
- extern const char *git_committer_info(int);
- extern const char *fmt_ident(const char *name, const char *email,
-               enum want_ident whose_ident,
-               const char *date_str, int);
- extern const char *fmt_name(enum want_ident);
- extern const char *ident_default_name(void);
- extern const char *ident_default_email(void);
- extern const char *git_editor(void);
- extern const char *git_sequence_editor(void);
- extern const char *git_pager(int stdout_is_tty);
- extern int is_terminal_dumb(void);
- extern int git_ident_config(const char *, const char *, void *);
+ const char *git_author_info(int);
+ const char *git_committer_info(int);
+ const char *fmt_ident(const char *name, const char *email,
+                     enum want_ident whose_ident,
+                     const char *date_str, int);
+ const char *fmt_name(enum want_ident);
+ const char *ident_default_name(void);
+ const char *ident_default_email(void);
+ const char *git_editor(void);
+ const char *git_sequence_editor(void);
+ const char *git_pager(int stdout_is_tty);
+ int is_terminal_dumb(void);
+ int git_ident_config(const char *, const char *, void *);
 +/*
 + * Prepare an ident to fall back on if the user didn't configure it.
 + */
 +void prepare_fallback_ident(const char *name, const char *email);
extern void reset_ident_date(void);
+ void reset_ident_date(void);
  
  struct ident_split {
        const char *name_begin;
diff --cc commit.h
index cc19cb53148ecdd6ce39d6836d8d52cbc0db5042,18f05c64d83a4f5051d11e2263bf7ffafa98ca2c..f5295ca7f3efe9b7665d1c6728814bfe2901d059
+++ b/commit.h
@@@ -247,27 -240,23 +247,27 @@@ struct commit *get_fork_point(const cha
  
  struct oid_array;
  struct ref;
extern int register_shallow(struct repository *r, const struct object_id *oid);
extern int unregister_shallow(const struct object_id *oid);
extern int for_each_commit_graft(each_commit_graft_fn, void *);
extern int is_repository_shallow(struct repository *r);
extern struct commit_list *get_shallow_commits(struct object_array *heads,
-               int depth, int shallow_flag, int not_shallow_flag);
extern struct commit_list *get_shallow_commits_by_rev_list(
+ int register_shallow(struct repository *r, const struct object_id *oid);
+ int unregister_shallow(const struct object_id *oid);
+ int for_each_commit_graft(each_commit_graft_fn, void *);
+ int is_repository_shallow(struct repository *r);
+ struct commit_list *get_shallow_commits(struct object_array *heads,
+                                       int depth, int shallow_flag, int not_shallow_flag);
+ struct commit_list *get_shallow_commits_by_rev_list(
                int ac, const char **av, int shallow_flag, int not_shallow_flag);
extern void set_alternate_shallow_file(struct repository *r, const char *path, int override);
extern int write_shallow_commits(struct strbuf *out, int use_pack_protocol,
-                                const struct oid_array *extra);
extern void setup_alternate_shallow(struct lock_file *shallow_lock,
-                                   const char **alternate_shallow_file,
-                                   const struct oid_array *extra);
extern const char *setup_temporary_shallow(const struct oid_array *extra);
extern void advertise_shallow_grafts(int);
+ void set_alternate_shallow_file(struct repository *r, const char *path, int override);
+ int write_shallow_commits(struct strbuf *out, int use_pack_protocol,
+                         const struct oid_array *extra);
+ void setup_alternate_shallow(struct lock_file *shallow_lock,
+                            const char **alternate_shallow_file,
+                            const struct oid_array *extra);
+ const char *setup_temporary_shallow(const struct oid_array *extra);
+ void advertise_shallow_grafts(int);
  
 +/*
 + * Initialize with prepare_shallow_info() or zero-initialize (equivalent to
 + * prepare_shallow_info with a NULL oid_array).
 + */
  struct shallow_info {
        struct oid_array *shallow;
        int *ours, nr_ours;
diff --cc config.h
index 36bb23a9d9380ed3d52f331f74f30cf3e54efafc,c275fe22846d26bf6e7efa6cf8c71ea5e147c62e..f0ed464004da601a26d574b1cdc158abb50ae2bc
+++ b/config.h
@@@ -72,58 -68,57 +72,58 @@@ struct config_options 
  };
  
  typedef int (*config_fn_t)(const char *, const char *, void *);
- extern int git_default_config(const char *, const char *, void *);
- extern int git_config_from_file(config_fn_t fn, const char *, void *);
- extern int git_config_from_file_with_options(config_fn_t fn, const char *,
-                                            void *,
-                                            const struct config_options *);
- extern int git_config_from_mem(config_fn_t fn,
-                              const enum config_origin_type,
-                              const char *name,
-                              const char *buf, size_t len,
-                              void *data, const struct config_options *opts);
- extern int git_config_from_blob_oid(config_fn_t fn, const char *name,
-                                   const struct object_id *oid, void *data);
- extern void git_config_push_parameter(const char *text);
- extern int git_config_from_parameters(config_fn_t fn, void *data);
- extern void read_early_config(config_fn_t cb, void *data);
- extern void read_very_early_config(config_fn_t cb, void *data);
- extern void git_config(config_fn_t fn, void *);
- extern int config_with_options(config_fn_t fn, void *,
-                              struct git_config_source *config_source,
-                              const struct config_options *opts);
- extern int git_parse_ssize_t(const char *, ssize_t *);
- extern int git_parse_ulong(const char *, unsigned long *);
- extern int git_parse_maybe_bool(const char *);
- extern int git_config_int(const char *, const char *);
- extern int64_t git_config_int64(const char *, const char *);
- extern unsigned long git_config_ulong(const char *, const char *);
- extern ssize_t git_config_ssize_t(const char *, const char *);
- extern int git_config_bool_or_int(const char *, const char *, int *);
- extern int git_config_bool(const char *, const char *);
- extern int git_config_string(const char **, const char *, const char *);
- extern int git_config_pathname(const char **, const char *, const char *);
- extern int git_config_expiry_date(timestamp_t *, const char *, const char *);
- extern int git_config_color(char *, const char *, const char *);
- extern int git_config_set_in_file_gently(const char *, const char *, const char *);
- extern void git_config_set_in_file(const char *, const char *, const char *);
- extern int git_config_set_gently(const char *, const char *);
- extern void git_config_set(const char *, const char *);
- extern int git_config_parse_key(const char *, char **, int *);
- extern int git_config_key_is_valid(const char *key);
- extern int git_config_set_multivar_gently(const char *, const char *, const char *, int);
- extern void git_config_set_multivar(const char *, const char *, const char *, int);
- extern int git_config_set_multivar_in_file_gently(const char *, const char *, const char *, const char *, int);
- extern void git_config_set_multivar_in_file(const char *, const char *, const char *, const char *, int);
- extern int git_config_rename_section(const char *, const char *);
- extern int git_config_rename_section_in_file(const char *, const char *, const char *);
- extern int git_config_copy_section(const char *, const char *);
- extern int git_config_copy_section_in_file(const char *, const char *, const char *);
- extern const char *git_etc_gitconfig(void);
- extern int git_env_bool(const char *, int);
- extern unsigned long git_env_ulong(const char *, unsigned long);
- extern int git_config_system(void);
- extern int config_error_nonbool(const char *);
+ int git_default_config(const char *, const char *, void *);
+ int git_config_from_file(config_fn_t fn, const char *, void *);
+ int git_config_from_file_with_options(config_fn_t fn, const char *,
+                                     void *,
+                                     const struct config_options *);
+ int git_config_from_mem(config_fn_t fn,
+                       const enum config_origin_type,
+                       const char *name,
+                       const char *buf, size_t len,
+                       void *data, const struct config_options *opts);
+ int git_config_from_blob_oid(config_fn_t fn, const char *name,
+                            const struct object_id *oid, void *data);
+ void git_config_push_parameter(const char *text);
+ int git_config_from_parameters(config_fn_t fn, void *data);
+ void read_early_config(config_fn_t cb, void *data);
++void read_very_early_config(config_fn_t cb, void *data);
+ void git_config(config_fn_t fn, void *);
+ int config_with_options(config_fn_t fn, void *,
+                       struct git_config_source *config_source,
+                       const struct config_options *opts);
+ int git_parse_ssize_t(const char *, ssize_t *);
+ int git_parse_ulong(const char *, unsigned long *);
+ int git_parse_maybe_bool(const char *);
+ int git_config_int(const char *, const char *);
+ int64_t git_config_int64(const char *, const char *);
+ unsigned long git_config_ulong(const char *, const char *);
+ ssize_t git_config_ssize_t(const char *, const char *);
+ int git_config_bool_or_int(const char *, const char *, int *);
+ int git_config_bool(const char *, const char *);
+ int git_config_string(const char **, const char *, const char *);
+ int git_config_pathname(const char **, const char *, const char *);
+ int git_config_expiry_date(timestamp_t *, const char *, const char *);
+ int git_config_color(char *, const char *, const char *);
+ int git_config_set_in_file_gently(const char *, const char *, const char *);
+ void git_config_set_in_file(const char *, const char *, const char *);
+ int git_config_set_gently(const char *, const char *);
+ void git_config_set(const char *, const char *);
+ int git_config_parse_key(const char *, char **, int *);
+ int git_config_key_is_valid(const char *key);
+ int git_config_set_multivar_gently(const char *, const char *, const char *, int);
+ void git_config_set_multivar(const char *, const char *, const char *, int);
+ int git_config_set_multivar_in_file_gently(const char *, const char *, const char *, const char *, int);
+ void git_config_set_multivar_in_file(const char *, const char *, const char *, const char *, int);
+ int git_config_rename_section(const char *, const char *);
+ int git_config_rename_section_in_file(const char *, const char *, const char *);
+ int git_config_copy_section(const char *, const char *);
+ int git_config_copy_section_in_file(const char *, const char *, const char *);
+ const char *git_etc_gitconfig(void);
+ int git_env_bool(const char *, int);
+ unsigned long git_env_ulong(const char *, unsigned long);
+ int git_config_system(void);
+ int config_error_nonbool(const char *);
  #if defined(__GNUC__)
  #define config_error_nonbool(s) (config_error_nonbool(s), const_error())
  #endif
diff --cc dir.h
index c23313b02126f97e63e5694bdc02907363fe077d,2e6fcba389cc93cd9b8a5f9915c38968d512cc6d..680079bbe3241ff84fc8260009515f03b6ba819e
--- 1/dir.h
--- 2/dir.h
+++ b/dir.h
@@@ -213,27 -213,27 +213,27 @@@ int count_slashes(const char *s)
  #define MATCHED_RECURSIVELY 1
  #define MATCHED_FNMATCH 2
  #define MATCHED_EXACTLY 3
- extern int simple_length(const char *match);
- extern int no_wildcard(const char *string);
- extern char *common_prefix(const struct pathspec *pathspec);
- extern int match_pathspec(const struct index_state *istate,
-                         const struct pathspec *pathspec,
-                         const char *name, int namelen,
-                         int prefix, char *seen, int is_dir);
- extern int report_path_error(const char *ps_matched, const struct pathspec *pathspec);
- extern int within_depth(const char *name, int namelen, int depth, int max_depth);
- extern int fill_directory(struct dir_struct *dir,
-                         struct index_state *istate,
-                         const struct pathspec *pathspec);
- extern int read_directory(struct dir_struct *, struct index_state *istate,
-                         const char *path, int len,
-                         const struct pathspec *pathspec);
- extern int is_excluded_from_list(const char *pathname, int pathlen,
-                                const char *basename, int *dtype,
-                                struct exclude_list *el,
-                                struct index_state *istate);
+ int simple_length(const char *match);
+ int no_wildcard(const char *string);
+ char *common_prefix(const struct pathspec *pathspec);
+ int match_pathspec(const struct index_state *istate,
+                  const struct pathspec *pathspec,
+                  const char *name, int namelen,
+                  int prefix, char *seen, int is_dir);
 -int report_path_error(const char *ps_matched, const struct pathspec *pathspec, const char *prefix);
++int report_path_error(const char *ps_matched, const struct pathspec *pathspec);
+ int within_depth(const char *name, int namelen, int depth, int max_depth);
+ int fill_directory(struct dir_struct *dir,
+                  struct index_state *istate,
+                  const struct pathspec *pathspec);
+ int read_directory(struct dir_struct *, struct index_state *istate,
+                  const char *path, int len,
+                  const struct pathspec *pathspec);
+ int is_excluded_from_list(const char *pathname, int pathlen,
+                         const char *basename, int *dtype,
+                         struct exclude_list *el,
+                         struct index_state *istate);
  struct dir_entry *dir_add_ignored(struct dir_struct *dir,
                                  struct index_state *istate,
                                  const char *pathname, int len);
   * these implement the matching logic for dir.c:excluded_from_list and
   * attr.c:path_matches()
   */
- extern int match_basename(const char *, int,
-                         const char *, int, int, unsigned);
- extern int match_pathname(const char *, int,
-                         const char *, int,
-                         const char *, int, int, unsigned);
- extern struct exclude *last_exclude_matching(struct dir_struct *dir,
-                                            struct index_state *istate,
-                                            const char *name, int *dtype);
- extern int is_excluded(struct dir_struct *dir,
-                      struct index_state *istate,
-                      const char *name, int *dtype);
- extern struct exclude_list *add_exclude_list(struct dir_struct *dir,
-                                            int group_type, const char *src);
- extern int add_excludes_from_file_to_list(const char *fname, const char *base, int baselen,
-                                         struct exclude_list *el, struct  index_state *istate);
- extern void add_excludes_from_file(struct dir_struct *, const char *fname);
- extern int add_excludes_from_blob_to_list(struct object_id *oid,
-                                         const char *base, int baselen,
-                                         struct exclude_list *el);
- extern void parse_exclude_pattern(const char **string, int *patternlen, unsigned *flags, int *nowildcardlen);
- extern void add_exclude(const char *string, const char *base,
-                       int baselen, struct exclude_list *el, int srcpos);
- extern void clear_exclude_list(struct exclude_list *el);
- extern void clear_directory(struct dir_struct *dir);
+ int match_basename(const char *, int,
+                  const char *, int, int, unsigned);
+ int match_pathname(const char *, int,
+                  const char *, int,
+                  const char *, int, int, unsigned);
+ struct exclude *last_exclude_matching(struct dir_struct *dir,
+                                     struct index_state *istate,
+                                     const char *name, int *dtype);
+ int is_excluded(struct dir_struct *dir,
+               struct index_state *istate,
+               const char *name, int *dtype);
+ struct exclude_list *add_exclude_list(struct dir_struct *dir,
+                                     int group_type, const char *src);
+ int add_excludes_from_file_to_list(const char *fname, const char *base, int baselen,
+                                  struct exclude_list *el, struct  index_state *istate);
+ void add_excludes_from_file(struct dir_struct *, const char *fname);
+ int add_excludes_from_blob_to_list(struct object_id *oid,
+                                  const char *base, int baselen,
+                                  struct exclude_list *el);
+ void parse_exclude_pattern(const char **string, int *patternlen, unsigned *flags, int *nowildcardlen);
+ void add_exclude(const char *string, const char *base,
+                int baselen, struct exclude_list *el, int srcpos);
+ void clear_exclude_list(struct exclude_list *el);
+ void clear_directory(struct dir_struct *dir);
 +
 +int repo_file_exists(struct repository *repo, const char *path);
  int file_exists(const char *);
  
extern int is_inside_dir(const char *dir);
extern int dir_inside_of(const char *subdir, const char *dir);
+ int is_inside_dir(const char *dir);
+ int dir_inside_of(const char *subdir, const char *dir);
  
  static inline int is_dot_or_dotdot(const char *name)
  {
Simple merge
diff --cc http.h
Simple merge
diff --cc khash.h
Simple merge
diff --cc object-store.h
Simple merge
diff --cc refs.h
Simple merge
diff --cc remote.h
Simple merge
diff --cc tree-walk.h
index 3aa381b6a3dd20e4d98f781dde6bcf27bc8b055b,550b8dd9a49911741de12f62bc12a4c6611ceaf3..161e2400f443460fc6606e97d4e356c1f0b478ed
@@@ -66,9 -66,9 +66,9 @@@ struct traverse_info 
        int show_all_errors;
  };
  
 -int get_tree_entry(const struct object_id *, const char *, struct object_id *, unsigned *);
 +int get_tree_entry(const struct object_id *, const char *, struct object_id *, unsigned short *);
extern char *make_traverse_path(char *path, const struct traverse_info *info, const struct name_entry *n);
extern void setup_traverse_info(struct traverse_info *info, const char *base);
+ char *make_traverse_path(char *path, const struct traverse_info *info, const struct name_entry *n);
+ void setup_traverse_info(struct traverse_info *info, const char *base);
  
  static inline int traverse_path_len(const struct traverse_info *info, const struct name_entry *n)
  {