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

Re: [PATCH 1/3] rebase: avoid non-function use of "return" on FreeBSD

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 16, 2014, 18:23 UTC
Message-ID
<xmqqppkhgmll.fsf@gitster.dls.corp.google.com>
In-Reply-To
<xmqqtx9tgn5l.fsf@gitster.dls.corp.google.com>
Junio C Hamano <gitster@pobox.com> writes:
Show 9 quoted lines
> By the way, you have this in your log message:
>
>     ... the git-rebase--*.sh scripts have used a "return" to return
>     from the "dot" command that runs them.  While this is allowed by
>     POSIX,...
>
>
> Is it "this is allowed", or is it "this should be the way and shells
> that do not do so are buggy"?
Answering myself...
The only "unspecified" I see is this:
    If the shell is not currently executing a function or dot
    script, the results are unspecified.

which clearly does not apply to the version before this patch (we are executing a dot script). And

    The return utility shall cause the shell to stop executing the
    current function or dot script.

would mean that we are correct to expect that "should not get here" is not reached, as the "return 5" would cause the shell to stop executing the dot script there.

So "while this is allowed by POSIX" may be a bit misleading and needs to be reworded, I guess?

Previous: Junio C HamanoNext: Kyle J. McKay
Message 15 of 21 in “Fix support for FreeBSD's /bin/sh”
  1. 0/3 Fix support for FreeBSD's /bin/shKyle J. McKay, Apr 11, 2014
  2. 1/3 rebase: avoid non-function use of "return" on FreeBSDKyle J. McKay, Apr 11, 2014
  3. Matthieu MoyApr 11, 2014
  4. Kyle J. McKayApr 11, 2014
  5. Matthieu MoyApr 11, 2014
  6. Kyle J. McKayApr 11, 2014
  7. Matthieu MoyApr 12, 2014
  8. Kyle J. McKayApr 13, 2014
  9. Matthieu MoyApr 14, 2014
  10. Junio C HamanoApr 14, 2014
  11. Junio C HamanoApr 14, 2014
  12. Kyle J. McKayApr 16, 2014
  13. Junio C HamanoApr 16, 2014
  14. Junio C HamanoApr 16, 2014
  15. Junio C HamanoApr 16, 2014
  16. Kyle J. McKayApr 17, 2014
  17. Junio C HamanoApr 17, 2014
  18. Kyle J. McKayApr 18, 2014
  19. 2/3 Revert "rebase: fix run_specific_rebase's use of "return" on FreeBSD"Kyle J. McKay, Apr 11, 2014
  20. 3/3 test: fix t5560 on FreeBSDKyle J. McKay, Apr 11, 2014
  21. Junio C HamanoApr 11, 2014

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.