Hi,

I've a report that with later bash the following which works in bash-4.2

 x () {
  local x=y
  declare -p x
  echo $x
  unset x
  declare -p x
  echo $x
 }

with

 linux-40cm:~ # x () {
 >   local x=y
 >   declare -p x
 >   echo $x
 >   unset x
 >   declare -p x
 >   echo $x
 >  }
 linux-40cm:~ # x
 declare -- x="y"
 y
 -bash: declare: x: not found
 
but with bash-5.X the reporter sees (and complains)

 sl15sp5:~ # x () {
 >   local x=y
 >   declare -p x
 >   echo $x
 >   unset x
 >   declare -p x
 >   echo $x
 >  }
 sl15sp5:~ # x
 declare -- x="y"
 y
 declare -- x

... for global variables it works as expected.

Werner

-- 
  "Having a smoking section in a restaurant is like having
          a peeing section in a swimming pool." -- Edward Burr

Attachment: signature.asc
Description: PGP signature

Reply via email to