Si, el script anterior no es funcional, es solo de ejemplo, en realidad trigger_error necesita un parametro obligatorio (sino genera error

) , y otro opcional que es el tipo de error.
El parametro obligatorio seria el texto del error o sea:
mysql_query(...) or trigger_error(mysql_error())
El archivo y la linea, constantes __FILE__ y __LINE__, las pasa automaticamente el trigger_error al error_handler, por eso es que esta última función tiene que definirse con varios parametros.
Saludos