From: Junio C Hamano <gitster@pobox.com>
To: Eric Sunshine <ericsunshine@charter.net>
Cc: git@vger.kernel.org, "Rubén Justo" <rjusto@gmail.com>,
"Phillip Wood" <phillip.wood123@gmail.com>,
"Kyle Lippincott" <spectral@google.com>,
"Eric Sunshine" <sunshine@sunshineco.com>
Subject: Re: [PATCH v2 1/5] t3430: drop unnecessary one-shot "VAR=val shell-func" invocation
Date: Fri, 26 Jul 2024 11:50:35 -0700 [thread overview]
Message-ID: <xmqqplr0t2bo.fsf@gitster.g> (raw)
In-Reply-To: <20240726081522.28015-2-ericsunshine@charter.net> (Eric Sunshine's message of "Fri, 26 Jul 2024 04:15:18 -0400")
Eric Sunshine <ericsunshine@charter.net> writes:
> From: Eric Sunshine <sunshine@sunshineco.com>
>
> The behavior of a one-shot environment variable assignment of the form
> "VAR=val cmd" is undefined according to POSIX when "cmd" is a shell
Please use the right word to describe what the standard says.
Throughout the topic's discussion, you seem to be repeating
"undefined", but the word POSIX uses for this particular unportable
behaviour is "unspecified". The differences are subtle, and for
programs that want to be conformant, there is no practical
difference (in other words, we should not rely on the existence or
validity of the value or behaviour if we wanted to be portable).
The former is what results from use of an invalid construct or
feeding an invalid data input. The implementation can do whatever
it wants to do once you trigger an undefined behaviour. The latter
is what results from use of a valid construct or valid data input,
but outcome may differ across implementations. An "unspecified"
behaviour often are still consistent and sensible within a single
conformant implementation.
next prev parent reply other threads:[~2024-07-26 18:50 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-22 6:59 [PATCH 0/4] improve one-shot variable detection with shell function Eric Sunshine
2024-07-22 6:59 ` [PATCH 1/4] t3430: modernize one-shot "VAR=val shell-func" invocation Eric Sunshine
2024-07-22 15:09 ` Phillip Wood
2024-07-23 9:26 ` Phillip Wood
2024-07-26 6:33 ` Eric Sunshine
2024-07-26 6:15 ` Eric Sunshine
2024-07-22 18:24 ` Junio C Hamano
2024-07-26 6:30 ` Eric Sunshine
2024-07-22 6:59 ` [PATCH 2/4] t4034: fix use of one-shot variable assignment with shell function Eric Sunshine
2024-07-22 6:59 ` [PATCH 3/4] check-non-portable-shell: improve `VAR=val shell-func` detection Eric Sunshine
2024-07-22 14:46 ` Rubén Justo
2024-07-26 6:45 ` Eric Sunshine
2024-07-26 13:15 ` Rubén Justo
2024-07-22 17:26 ` Kyle Lippincott
2024-07-22 18:10 ` Junio C Hamano
2024-07-22 21:35 ` Kyle Lippincott
2024-07-22 21:57 ` Junio C Hamano
2024-07-22 6:59 ` [PATCH 4/4] check-non-portable-shell: suggest alternative for `VAR=val shell-func` Eric Sunshine
2024-07-22 14:47 ` Rubén Justo
2024-07-22 14:50 ` [PATCH 0/4] improve one-shot variable detection with shell function Rubén Justo
2024-07-26 8:15 ` [PATCH v2 0/5] " Eric Sunshine
2024-07-26 8:15 ` [PATCH v2 1/5] t3430: drop unnecessary one-shot "VAR=val shell-func" invocation Eric Sunshine
2024-07-26 18:50 ` Junio C Hamano [this message]
2024-07-26 19:32 ` Eric Sunshine
2024-07-26 8:15 ` [PATCH v2 2/5] t4034: fix use of one-shot variable assignment with shell function Eric Sunshine
2024-07-26 8:15 ` [PATCH v2 3/5] check-non-portable-shell: loosen one-shot assignment error message Eric Sunshine
2024-07-26 8:15 ` [PATCH v2 4/5] check-non-portable-shell: suggest alternative for `VAR=val shell-func` Eric Sunshine
2024-07-26 13:11 ` Rubén Justo
2024-07-26 19:31 ` Eric Sunshine
2024-07-26 8:15 ` [PATCH v2 5/5] check-non-portable-shell: improve `VAR=val shell-func` detection Eric Sunshine
2024-07-26 18:38 ` [PATCH v2 0/5] improve one-shot variable detection with shell function Junio C Hamano
2024-07-27 5:35 ` [PATCH v3 " Eric Sunshine
2024-07-27 5:35 ` [PATCH v3 1/5] t3430: drop unnecessary one-shot "VAR=val shell-func" invocation Eric Sunshine
2024-07-27 5:35 ` [PATCH v3 2/5] t4034: fix use of one-shot variable assignment with shell function Eric Sunshine
2024-07-27 5:35 ` [PATCH v3 3/5] check-non-portable-shell: loosen one-shot assignment error message Eric Sunshine
2024-07-27 5:35 ` [PATCH v3 4/5] check-non-portable-shell: suggest alternative for `VAR=val shell-func` Eric Sunshine
2024-07-27 5:35 ` [PATCH v3 5/5] check-non-portable-shell: improve `VAR=val shell-func` detection Eric Sunshine
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=xmqqplr0t2bo.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=ericsunshine@charter.net \
--cc=git@vger.kernel.org \
--cc=phillip.wood123@gmail.com \
--cc=rjusto@gmail.com \
--cc=spectral@google.com \
--cc=sunshine@sunshineco.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).