From: "René Scharfe" <rene.scharfe@lsrfire.ath.cx>
To: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Cc: Junio C Hamano <gitster@pobox.com>,
GIT Mailing-list <git@vger.kernel.org>
Subject: Re: [PATCH 6/6] sparse: Fix mingw_main() argument number/type errors
Date: Sun, 28 Apr 2013 02:31:43 +0200 [thread overview]
Message-ID: <517C6DEF.2050305@lsrfire.ath.cx> (raw)
In-Reply-To: <517C24D3.8080802@ramsay1.demon.co.uk>
Am 27.04.2013 21:19, schrieb Ramsay Jones:
> In order to suppress these warnings, since both of the main
> functions need to be declared with the same prototype, we
> change the declaration of the 9 main functions, thus:
>
> int main(int argc, char **argv)
Why not take the opposite direction with a patch like this? It's quick
and dirty and based on v1.8.1.msysgit.1, as that was the version I had
lying around here, but you get the idea.
René
---
compat/mingw.h | 4 ++--
daemon.c | 16 ++++++++--------
http-backend.c | 2 +-
imap-send.c | 2 +-
sh-i18n--envsubst.c | 2 +-
shell.c | 2 +-
show-index.c | 2 +-
test-ctype.c | 2 +-
test-date.c | 8 ++++----
test-delta.c | 2 +-
test-dump-cache-tree.c | 2 +-
test-genrandom.c | 2 +-
test-line-buffer.c | 2 +-
test-match-trees.c | 2 +-
test-mktemp.c | 2 +-
test-path-utils.c | 4 ++--
test-regex.c | 2 +-
test-revision-walking.c | 2 +-
test-run-command.c | 2 +-
test-scrap-cache-tree.c | 2 +-
test-sha1.c | 2 +-
test-sigchain.c | 2 +-
test-string-list.c | 2 +-
test-svn-fe.c | 4 ++--
upload-pack.c | 6 +++---
25 files changed, 40 insertions(+), 40 deletions(-)
diff --git a/compat/mingw.h b/compat/mingw.h
index 389ae01..74e7b87 100644
--- a/compat/mingw.h
+++ b/compat/mingw.h
@@ -452,11 +452,11 @@ int xwcstoutf(char *utf, const wchar_t *wcs, size_t utflen);
void mingw_startup();
#define main(c,v) dummy_decl_mingw_main(); \
-static int mingw_main(); \
+static int mingw_main(int, const char **); \
int main(int argc, const char **argv) \
{ \
mingw_startup(); \
- return mingw_main(__argc, __argv); \
+ return mingw_main(argc, argv); \
} \
static int mingw_main(c,v)
diff --git a/daemon.c b/daemon.c
index 4602b46..f4186a7 100644
--- a/daemon.c
+++ b/daemon.c
@@ -36,15 +36,15 @@ static const char daemon_usage[] =
" [<directory>...]";
/* List of acceptable pathname prefixes */
-static char **ok_paths;
+static const char **ok_paths;
static int strict_paths;
/* If this is set, git-daemon-export-ok is not required */
static int export_all_trees;
/* Take all paths relative to this one if non-NULL */
-static char *base_path;
-static char *interpolated_path;
+static const char *base_path;
+static const char *interpolated_path;
static int base_path_relaxed;
/* Flag indicating client sent extra args. */
@@ -196,7 +196,7 @@ static const char *path_ok(char *directory)
}
if ( ok_paths && *ok_paths ) {
- char **pp;
+ const char **pp;
int pathlen = strlen(path);
/* The validation is done on the paths after enter_repo
@@ -257,7 +257,7 @@ static int daemon_error(const char *dir, const char *msg)
return -1;
}
-static char *access_hook;
+static const char *access_hook;
static int run_access_hook(struct daemon_service *service, const char *dir, const char *path)
{
@@ -739,7 +739,7 @@ static void check_dead_children(void)
cradle = &blanket->next;
}
-static char **cld_argv;
+static const char **cld_argv;
static void handle(int incoming, struct sockaddr *addr, socklen_t addrlen)
{
struct child_process cld = { NULL };
@@ -1164,7 +1164,7 @@ static int serve(struct string_list *listen_addr, int listen_port,
return service_loop(&socklist);
}
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
int listen_port = 0;
struct string_list listen_addr = STRING_LIST_INIT_NODUP;
@@ -1179,7 +1179,7 @@ int main(int argc, char **argv)
git_extract_argv0_path(argv[0]);
for (i = 1; i < argc; i++) {
- char *arg = argv[i];
+ const char *arg = argv[i];
if (!prefixcmp(arg, "--listen=")) {
string_list_append(&listen_addr, xstrdup_tolower(arg + 9));
diff --git a/http-backend.c b/http-backend.c
index f50e77f..ce164bb 100644
--- a/http-backend.c
+++ b/http-backend.c
@@ -533,7 +533,7 @@ static struct service_cmd {
{"POST", "/git-receive-pack$", service_rpc}
};
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
char *method = getenv("REQUEST_METHOD");
char *dir;
diff --git a/imap-send.c b/imap-send.c
index d42e471..ec98934 100644
--- a/imap-send.c
+++ b/imap-send.c
@@ -1502,7 +1502,7 @@ static int git_imap_config(const char *key, const char *val, void *cb)
return 0;
}
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
struct msg_data all_msgs, msg;
struct store *ctx = NULL;
diff --git a/sh-i18n--envsubst.c b/sh-i18n--envsubst.c
index 5ddd688..c3d0654 100644
--- a/sh-i18n--envsubst.c
+++ b/sh-i18n--envsubst.c
@@ -64,7 +64,7 @@ static void note_variables (const char *string);
static void subst_from_stdin (void);
int
-main (int argc, char *argv[])
+main (int argc, const char *argv[])
{
/* Default values for command line options. */
/* unsigned short int show_variables = 0; */
diff --git a/shell.c b/shell.c
index 06a394c..9ec4491 100644
--- a/shell.c
+++ b/shell.c
@@ -129,7 +129,7 @@ static struct commands {
{ NULL },
};
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
char *prog;
const char **user_argv;
diff --git a/show-index.c b/show-index.c
index 5a9eed7..651a115 100644
--- a/show-index.c
+++ b/show-index.c
@@ -4,7 +4,7 @@
static const char show_index_usage[] =
"git show-index < <packed archive index>";
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
int i;
unsigned nr;
diff --git a/test-ctype.c b/test-ctype.c
index 707a821..694dcfb 100644
--- a/test-ctype.c
+++ b/test-ctype.c
@@ -28,7 +28,7 @@ static int is_in(const char *s, int ch)
#define LOWER "abcdefghijklmnopqrstuvwxyz"
#define UPPER "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
TEST_CLASS(isdigit, DIGIT);
TEST_CLASS(isspace, " \n\r\t");
diff --git a/test-date.c b/test-date.c
index 10afaab..00c9e93 100644
--- a/test-date.c
+++ b/test-date.c
@@ -5,7 +5,7 @@ static const char *usage_msg = "\n"
" test-date parse [date]...\n"
" test-date approxidate [date]...\n";
-static void show_dates(char **argv, struct timeval *now)
+static void show_dates(const char **argv, struct timeval *now)
{
struct strbuf buf = STRBUF_INIT;
@@ -17,7 +17,7 @@ static void show_dates(char **argv, struct timeval *now)
strbuf_release(&buf);
}
-static void parse_dates(char **argv, struct timeval *now)
+static void parse_dates(const char **argv, struct timeval *now)
{
for (; *argv; argv++) {
char result[100];
@@ -34,7 +34,7 @@ static void parse_dates(char **argv, struct timeval *now)
}
}
-static void parse_approxidate(char **argv, struct timeval *now)
+static void parse_approxidate(const char **argv, struct timeval *now)
{
for (; *argv; argv++) {
time_t t;
@@ -43,7 +43,7 @@ static void parse_approxidate(char **argv, struct timeval *now)
}
}
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
struct timeval now;
const char *x;
diff --git a/test-delta.c b/test-delta.c
index af40a3c..b697e87 100644
--- a/test-delta.c
+++ b/test-delta.c
@@ -15,7 +15,7 @@
static const char usage_str[] =
"test-delta (-d|-p) <from_file> <data_file> <out_file>";
-int main(int argc, char *argv[])
+int main(int argc, const char *argv[])
{
int fd;
struct stat st;
diff --git a/test-dump-cache-tree.c b/test-dump-cache-tree.c
index a6ffdf3..ab75fe0 100644
--- a/test-dump-cache-tree.c
+++ b/test-dump-cache-tree.c
@@ -54,7 +54,7 @@ static int dump_cache_tree(struct cache_tree *it,
return errs;
}
-int main(int ac, char **av)
+int main(int ac, const char **av)
{
struct cache_tree *another = cache_tree();
if (read_cache() < 0)
diff --git a/test-genrandom.c b/test-genrandom.c
index b3c28d9..fa63cfd 100644
--- a/test-genrandom.c
+++ b/test-genrandom.c
@@ -6,7 +6,7 @@
#include "git-compat-util.h"
-int main(int argc, char *argv[])
+int main(int argc, const char *argv[])
{
unsigned long count, next = 0;
unsigned char *c;
diff --git a/test-line-buffer.c b/test-line-buffer.c
index ef1d7ba..a018fd7 100644
--- a/test-line-buffer.c
+++ b/test-line-buffer.c
@@ -50,7 +50,7 @@ static void handle_line(const char *line, struct line_buffer *stdin_buf)
handle_command(line, arg + 1, stdin_buf);
}
-int main(int argc, char *argv[])
+int main(int argc, const char *argv[])
{
struct line_buffer stdin_buf = LINE_BUFFER_INIT;
struct line_buffer file_buf = LINE_BUFFER_INIT;
diff --git a/test-match-trees.c b/test-match-trees.c
index a3c4688..2af5d80 100644
--- a/test-match-trees.c
+++ b/test-match-trees.c
@@ -1,7 +1,7 @@
#include "cache.h"
#include "tree.h"
-int main(int ac, char **av)
+int main(int ac, const char **av)
{
unsigned char hash1[20], hash2[20], shifted[20];
struct tree *one, *two;
diff --git a/test-mktemp.c b/test-mktemp.c
index c8c5421..6f3542c 100644
--- a/test-mktemp.c
+++ b/test-mktemp.c
@@ -3,7 +3,7 @@
*/
#include "git-compat-util.h"
-int main(int argc, char *argv[])
+int main(int argc, const char *argv[])
{
if (argc != 2)
usage("Expected 1 parameter defining the temporary file template");
diff --git a/test-path-utils.c b/test-path-utils.c
index 0092cbf..e02154c 100644
--- a/test-path-utils.c
+++ b/test-path-utils.c
@@ -28,7 +28,7 @@ static int normalize_ceiling_entry(struct string_list_item *item, void *unused)
return 1;
}
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
if (argc == 3 && !strcmp(argv[1], "normalize_path_copy")) {
char *buf = xmalloc(PATH_MAX + 1);
@@ -85,7 +85,7 @@ int main(int argc, char **argv)
}
if (argc >= 4 && !strcmp(argv[1], "prefix_path")) {
- char *prefix = argv[2];
+ const char *prefix = argv[2];
int prefix_len = strlen(prefix);
int nongit_ok;
setup_git_directory_gently(&nongit_ok);
diff --git a/test-regex.c b/test-regex.c
index b5bfd54..22536aa 100644
--- a/test-regex.c
+++ b/test-regex.c
@@ -1,6 +1,6 @@
#include <git-compat-util.h>
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
char *pat = "[^={} \t]+";
char *str = "={}\nfred";
diff --git a/test-revision-walking.c b/test-revision-walking.c
index 3ade02c..d305962 100644
--- a/test-revision-walking.c
+++ b/test-revision-walking.c
@@ -45,7 +45,7 @@ static int run_revision_walk(void)
return got_revision;
}
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
if (argc < 2)
return 1;
diff --git a/test-run-command.c b/test-run-command.c
index 37918e1..00f040b 100644
--- a/test-run-command.c
+++ b/test-run-command.c
@@ -13,7 +13,7 @@
#include <string.h>
#include <errno.h>
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
struct child_process proc;
diff --git a/test-scrap-cache-tree.c b/test-scrap-cache-tree.c
index 4728013..cae5bcb 100644
--- a/test-scrap-cache-tree.c
+++ b/test-scrap-cache-tree.c
@@ -4,7 +4,7 @@
static struct lock_file index_lock;
-int main(int ac, char **av)
+int main(int ac, const char **av)
{
int fd = hold_locked_index(&index_lock, 1);
if (read_cache() < 0)
diff --git a/test-sha1.c b/test-sha1.c
index 80daba9..aed67af 100644
--- a/test-sha1.c
+++ b/test-sha1.c
@@ -1,6 +1,6 @@
#include "cache.h"
-int main(int ac, char **av)
+int main(int ac, const char **av)
{
git_SHA_CTX ctx;
unsigned char sha1[20];
diff --git a/test-sigchain.c b/test-sigchain.c
index 42db234..b00e17f 100644
--- a/test-sigchain.c
+++ b/test-sigchain.c
@@ -13,7 +13,7 @@ X(two)
X(three)
#undef X
-int main(int argc, char **argv) {
+int main(int argc, const char **argv) {
sigchain_push(SIGTERM, one);
sigchain_push(SIGTERM, two);
sigchain_push(SIGTERM, three);
diff --git a/test-string-list.c b/test-string-list.c
index 00ce6c9..f59cf05 100644
--- a/test-string-list.c
+++ b/test-string-list.c
@@ -41,7 +41,7 @@ static int prefix_cb(struct string_list_item *item, void *cb_data)
return !prefixcmp(item->string, prefix);
}
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
if (argc == 5 && !strcmp(argv[1], "split")) {
struct string_list list = STRING_LIST_INIT_DUP;
diff --git a/test-svn-fe.c b/test-svn-fe.c
index 0f2d9a4..8ac4954 100644
--- a/test-svn-fe.c
+++ b/test-svn-fe.c
@@ -11,7 +11,7 @@
static const char test_svnfe_usage[] =
"test-svn-fe (<dumpfile> | [-d] <preimage> <delta> <len>)";
-static int apply_delta(int argc, char *argv[])
+static int apply_delta(int argc, const char *argv[])
{
struct line_buffer preimage = LINE_BUFFER_INIT;
struct line_buffer delta = LINE_BUFFER_INIT;
@@ -35,7 +35,7 @@ static int apply_delta(int argc, char *argv[])
return 0;
}
-int main(int argc, char *argv[])
+int main(int argc, const char *argv[])
{
if (argc == 2) {
if (svndump_init(argv[1]))
diff --git a/upload-pack.c b/upload-pack.c
index 6142421..71c72cc 100644
--- a/upload-pack.c
+++ b/upload-pack.c
@@ -780,9 +780,9 @@ static void upload_pack(void)
}
}
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
{
- char *dir;
+ const char *dir;
int i;
int strict = 0;
@@ -793,7 +793,7 @@ int main(int argc, char **argv)
read_replace_refs = 0;
for (i = 1; i < argc; i++) {
- char *arg = argv[i];
+ const char *arg = argv[i];
if (arg[0] != '-')
break;
next prev parent reply other threads:[~2013-04-28 0:32 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-27 19:19 [PATCH 6/6] sparse: Fix mingw_main() argument number/type errors Ramsay Jones
2013-04-28 0:31 ` René Scharfe [this message]
2013-04-28 19:31 ` Junio C Hamano
2013-04-29 16:10 ` René Scharfe
2013-04-29 23:30 ` Ramsay Jones
2013-04-29 21:52 ` Ramsay Jones
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=517C6DEF.2050305@lsrfire.ath.cx \
--to=rene.scharfe@lsrfire.ath.cx \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=ramsay@ramsay1.demon.co.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).