Hey, Robert: Thanks for the input! Quoting you here with some of my thoughts...
> Using a variable name that's outside what POSIX specifies is hardly > using a feature that's outside POSIX - if it were then there would be > no safe non-trivial scripts, since any variable name might be made magic > by some shell or other (and no, there's nothing special about all upper > case variable names). This is a succinct statement of why I am somewhat dissatisfied at the result here. My own problems are solved because I know about the surprise. I can go away happy for now. Still, the potential for a clash like this remains with any other POSIX- compliant script I may run with Bash. This is true even if I code very tightly against the standard, without using any non-POSIX extensions. I think many of the special "magic" variables reserved by Bash are quite useful to script authors. I am glad they exist! What surprised me was that Bash-specific "magic" variables did not lose their "magic" qualities when Bash was invoked in a POSIX-compliant mode of execution. It's something I just need to be aware of, I suppose. Thanks to all of you for taking time to think about my question! -- Jason Franklin