When a nofork command substitution is in PS1 and ignoreeof is enabled, (sufficiently repeated) EOF doesn't actually cause the shell to exit:
$ PS1='${ :;}$ ' IGNOREEOF=1 bash --norc $ ^D Use "exit" to leave the shell. $ ^D Use "exit" to leave the shell. ...