Redirection or piping error message

I have written a script that appears to work correctly in testing, but is coming up with a starnge error message,

script_name[187]: test: 0403-004 Specify a parameter with this command.

Redirection or piping of stdin or stdout is allowed only with -b. (156).

The script is run by different functions being called as seen below and the bit it seems to not like is marked in bold.

setup_environment

if [ -s ${shame_list} ]
then
rm ${shame_list}
fi

already_logged_in

if [ ${rejection} = yes ]
then
shame_on_you < $shame_list
fi
logon

A brief run down of the script is that it sets up all the environment variables, them checks to see whether there is a shame_list file and removes it, creates a list of who is logged on, then tries to import this list into a function which pulls out selected in formation.

Can anyone shed any light on why the error message is coming up as it has stumped me?

Please post your OS and version, the scripting language, and how you are starting the script (since you state it's working in testing and then immediately state it's getting an error ) both in testing and when it's getting an error.

Also post the script (if possible) - this will assist the folks who can help you.

The only info I found on the error was here but I can't tell if that will help you or not.

The second error seems to be related to something called "progress" link.

The first error is related to the old bourne shell test syntax. With code like:
if [ ${rejection} = yes ]
if the variable "rejection" is not set, the shell will see:
if [ = yes ]
so you need to use:
if [ "${rejection}" = yes ]