> The expansion is being done in the parent shell, rather than the subshell.
But as you said in http://lists.gnu.org/archive/html/help-bash/2015-04/msg00010.html BASHPID is expanded in the subshell, so BASH_SUBSHELL must also be like that. And I found a comment which says: "make the child early, before word expansion" at http://code.metager.de/source/xref/gnu/bash/execute_cmd.c#3922