I have found it often helpful to add a "sleep 2" to the end of rc.local so as to give me a chance to read that last error message that flew by and disappeared as one of the later daemons failed to start when the system came up.
The fix I use here is to change /etc/inittab's 1:2345:respawn:/sbin/mingetty tty1 to add the --noclear option, so that mingetty doesn't clear the screen and thus preserves all of the boot-time messages on the console so you can scroll back to read them if desired (or just read the ones still on the screen).
You should be able to read the boot messages in /var/log/messages and /var/log/boot.log.
If not a 'bug' then how about we call it 'annoying and stupid' instead? Obviously from the comment by the other user I'm not alone in disliking this 'feature' and the statement to read the logs is both silly and dodges the issue. 1. Redhat is not the only vender out there. (For example, I use VMware, which prints messages to stdout when it loads but does not rely upon the Redhat calls to log the messages.) 2. Why print to stdout at all then? (If you have to read the boot.log to see the last few messages, why do the rc files print -anything- to stdout at all? Why are these messages printed if they are not meant to be read?) 3. What harm is it sleep for a couple seconds anyway?