Subject: Re: bug#23779: 25.0.95; consing "SHELLVAR" onto process-environment doesn't remove it from subprocess env

From: Dmitry Gutov <[email-masked]>
Date: Fri, 17 Jun 2016 22:01:19 +0300

On 06/17/2016 08:06 PM, Eli Zaretskii wrote:

> Now that 'push' works, why do we need setenv for that?

So that the user doesn't have to (push "VAR=value"), or (push "VAR="), 
or know the difference between the latter and (push "VAR").

setenv is a better abstraction. In fact, if you use it, you don't even 
have to know the format of process-environment.

>> So, what are the downsides?
>
> That there's no way of changing the environment permanently?

The environment is changes as a result. It just doesn't modify the 
original list, and, as such, contains duplicate values for the changed 
variables.

> I'm not sure I see why that is nicer.

Do you know what value "PAGER=" assigns to the variable PAGER?