When bash simply forks, installs the command and executes it, it does not consider it to be similar.
For any control structure, for example, command commands, if and while statements, where the shell should actually be involved outside the configuration, it does this.
This can be seen from the bash source, execute_command_internal in execute_cmd.c .
source share