git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
To: Junio C Hamano <gitster@pobox.com>
Cc: GIT Mailing-list <git@vger.kernel.org>
Subject: [PATCH] compat/regex/regexec.c: Fix some sparse warnings
Date: Tue, 17 May 2011 18:40:20 +0100	[thread overview]
Message-ID: <4DD2B304.90305@ramsay1.demon.co.uk> (raw)


In particular, sparse issues the following warnings:

        SP compat/regex/regex.c
    .../regexec.c:2329:40: warning: Using plain integer as NULL pointer
    .../regexec.c:2316:15: warning: symbol 'merge_state_with_log' was \
        not declared. Should it be static?
    .../regexec.c:2395:15: warning: symbol 'find_recover_state' was not \
        declared. Should it be static?

In order to fix the "symbol not declared" warnings (they are in fact
declared static earlier in the file), we simply add the static modifier
to the function definitions.

Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
---

Hi Junio,

Now that I'm building git with NO_REGEX=1 in my config.mak, I'm also
seeing these sparse warnings.

Note that the "symbol not declared" warnings actually highlight
a sparse bug; the earlier static function declarations should have
(effectively) 'transferred' the static modifier to the corresponding
function definition ...
[I have a testcase for this in my sparse repo, but I don't seem to have
found time to actually create a patch to fix this. :(]

ATB,
Ramsay Jones
 
 compat/regex/regexec.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/compat/regex/regexec.c b/compat/regex/regexec.c
index 0194965..0cd6e0e 100644
--- a/compat/regex/regexec.c
+++ b/compat/regex/regexec.c
@@ -2313,7 +2313,7 @@ transit_state (reg_errcode_t *err, re_match_context_t *mctx,
 }
 
 /* Update the state_log if we need */
-re_dfastate_t *
+static re_dfastate_t *
 internal_function
 merge_state_with_log (reg_errcode_t *err, re_match_context_t *mctx,
 		      re_dfastate_t *next_state)
@@ -2326,7 +2326,7 @@ merge_state_with_log (reg_errcode_t *err, re_match_context_t *mctx,
       mctx->state_log[cur_idx] = next_state;
       mctx->state_log_top = cur_idx;
     }
-  else if (mctx->state_log[cur_idx] == 0)
+  else if (mctx->state_log[cur_idx] == NULL)
     {
       mctx->state_log[cur_idx] = next_state;
     }
@@ -2392,7 +2392,7 @@ merge_state_with_log (reg_errcode_t *err, re_match_context_t *mctx,
 /* Skip bytes in the input that correspond to part of a
    multi-byte match, then look in the log for a state
    from which to restart matching.  */
-re_dfastate_t *
+static re_dfastate_t *
 internal_function
 find_recover_state (reg_errcode_t *err, re_match_context_t *mctx)
 {
-- 
1.7.5

             reply	other threads:[~2011-05-17 17:45 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-17 17:40 Ramsay Jones [this message]
2011-05-17 22:52 ` [PATCH] compat/regex/regexec.c: Fix some sparse warnings Ævar Arnfjörð Bjarmason
2011-05-18  4:04 ` Junio C Hamano

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=4DD2B304.90305@ramsay1.demon.co.uk \
    --to=ramsay@ramsay1.demon.co.uk \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /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).