Date: Wed, 28 Feb 2018 15:14:58 -0500 From: Chet Ramey <chet.ra...@case.edu> Message-ID: <b4615d2e-cf2f-ea60-c8c6-44b6eb8db...@case.edu>
| Yes, that's what I said. In the current scope, unset arranges for the | variable to appear unset. In a previous scope, unset just removes the | variable, which uncovers an instance of the variable at a (further) | previous scope. Were I you, I would simply change the "in a previous scope" behaviour to match the "in the current scope" behaviour. That makes it consistent, and rational. I cannot believe that there is anything anywhere which depends upon the current weirdness. I'd also forget "remove" as anything that unset is supposed to achieve, and I would change "appear" to "be" in the description of the current scope behaviour. kre