git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] usage: add NORETURN to BUG() function definitions

From
Ramsay Jones <ramsay@ramsayjones.plus.com>
Date
May 22, 2017, 14:02 UTC
Message-ID
<15d73455-6d0e-e67a-7cf3-eb0ae9aa3b0d@ramsayjones.plus.com>
In-Reply-To
<xmqqd1b1pq1j.fsf@gitster.mtv.corp.google.com>
On 22/05/17 03:46, Junio C Hamano wrote:
Show 11 quoted lines
> Hmph.  I do not know what went wrong.  The one I had in /usr/bin
> that came from the distro was too old that it didn't give any useful
> result and failed, and that was why I got v0.5.0-207-g14964df
> installed in ~/gitstuff/bin/ which is early on my $PATH; I do not
> think I did any other updates but now I am seeing happy results.
> 
>         $ git checkout jk/bug-to-abort^1
>         $ make SP_OBJ=usage.sp sparse
>         GIT_VERSION = 2.13.0.3.g25cd291963
>             SP usage.c
>         usage.c:220:6: error: symbol 'BUG_fl' redeclared with diff...

To save yourself a little typing, if you want to run sparse over a single file:

    $ make usage.sp  # ie simply replace '.c' with '.sp'

... is the recommended way to do it. This makes sure that the same flags are passed to cgcc as are passed to gcc as part of the build.

Note that I would not normally run sparse directly on a source file (except when messing around with different versions!), the idea is to use cgcc as a frontend (as the Makefile does).

Having said that, I rarely run sparse over just one file (except when fixing a sparse error/warning). On each branch (master->next->pu) I do

    $ make sparse >sp-out 2>&1 # nsp-out on 'next', psp-out on 'pu'

... so that I can diff the files from branch to branch. (I check the master branch file by hand. There is a single warning on Linux that is actually a sparse problem).

Just FYI, for today's fetch:
    $ diff sp-out nsp-out
    $ diff nsp-out psp-out
    12a13
    >     SP blame.c
    42a44,46
    > diff.c:813:6: warning: symbol 'emit_line' was not declared. Should it be static?
    > diff.c:828:6: warning: symbol 'emit_line_fmt' was not declared. Should it be static?
    > diff.c:1865:6: warning: symbol 'print_stat_summary_0' was not declared. Should it be static?
    54a59
    >     SP fsmonitor.c
    137a143
    >     SP sub-process.c
    170a177
    >     SP compat/fopen.c
    276a284
    > builtin/worktree.c:539:38: warning: Using plain integer as NULL pointer
    296a305
    >     SP t/helper/test-dir-iterator.c
    $ 
    

ATB, Ramsay Jones

Previous: Junio C HamanoNext: Junio C Hamano
Message 6 of 9 in “usage: add NORETURN to BUG() function definitions”
  1. usage: add NORETURN to BUG() function definitionsRamsay Jones, May 21, 2017
  2. Junio C HamanoMay 22, 2017
  3. Ramsay JonesMay 22, 2017
  4. Junio C HamanoMay 22, 2017
  5. Junio C HamanoMay 22, 2017
  6. Ramsay JonesMay 22, 2017
  7. Junio C HamanoMay 23, 2017
  8. Ramsay JonesMay 23, 2017
  9. Jeff KingMay 22, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.