2015-06-18 07:08:41 -0600, Eric Blake:
[...]
> $ bash -c 'a=1; readonly a; export a=2; echo $?'
> bash: a: readonly variable
> 1
>
> In fact, bash _didn't_ abort, while other shells do:
>
> $ dash -c 'a=1; readonly a; export a=2; echo $?'
> dash: 1: export: a: is read only
> $ ksh -c 'a=1; readon
On 06/18/2015 08:40 AM, Eric Blake wrote:
> $ readonly -p > /dev/full
> bash: readonly: write error: No space left on device
> $ echo $?
> 1
> $
>
> and that is certainly not a variable assignment error :)
>
> At any rate, I'm opening a new Austin Group bug today on this topic.
http://austingrou
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 6/18/15 10:40 AM, Eric Blake wrote:
> On 06/18/2015 08:22 AM, Chet Ramey wrote:
>> On 6/18/15 9:08 AM, Eric Blake wrote:
>>> On 06/18/2015 06:51 AM, Chet Ramey wrote:
>>
Neither of these are failures; the export command returns
succ
On 06/18/2015 08:22 AM, Chet Ramey wrote:
> On 6/18/15 9:08 AM, Eric Blake wrote:
>> On 06/18/2015 06:51 AM, Chet Ramey wrote:
>
>>>
>>> Neither of these are failures; the export command returns success. In
>>> fact, according to Posix, the export command cannot fail.
>
>> Not quite true; export
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 6/18/15 9:08 AM, Eric Blake wrote:
> On 06/18/2015 06:51 AM, Chet Ramey wrote:
>
>>
>> Neither of these are failures; the export command returns success. In
>> fact, according to Posix, the export command cannot fail.
>
> Not quite true; export C
On 06/18/2015 06:51 AM, Chet Ramey wrote:
>
> Neither of these are failures; the export command returns success. In
> fact, according to Posix, the export command cannot fail.
Not quite true; export CAN fail:
http://austingroupbugs.net/view.php?id=351
http://austingroupbugs.net/view.php?id=654
On 06/17/2015 04:33 PM, Nick Stoughton wrote:
> I was surprised when the following script did NOT exit at the indicated
> line:
>
> set -e
> export X=$(false)
> # should not reach here
Why not?
> The export utility is a special built-in, and according to POSIX XCU 2.8.1
> "Consequences of Shell
On 6/17/15 6:33 PM, Nick Stoughton wrote:
> I was surprised when the following script did NOT exit at the indicated line:
>
> set -e
> export X=$(false)
> # should not reach here
> echo did not exit
>
> Similarly, this fails in the same way:
>
> set -e
> X=$(false) export X
> # should not reach
On 6/18/15, Nick Stoughton wrote:
>
> set -e
> export X=$(false)
> # should not reach here
> echo did not exit
>
> But every shell I tested behaves the same way (sh, bash, dash, ksh, mksh,
> yash and zsh), so I feel I must be missing something. Can someone explain
> why the first 2 examples do no