>From variables.c The test against old_var's context level is to disallow local copies of readonly global variables (since I believe that this could be a security hole).
Can you please explain how that can be a security hole? $ readonly wtf; fn () { local wtf; }; fn bash: local: wtf: readonly variable You can't even be sure that you can set *local* variables in a function. This is a problem. Most of the shells that support local variables (ksh93, mksh, zsh, dash...) allow this. The only one I could find that doesn't is busybox. --- xoxo iza