No. El que incluyas el session_start() en una función no evita que se genere ese error. La función no se ejecuta hasta que es llamada, y si antes de lamarla hay alguna salida, pues tendrás el mismo error.
Y es cuestión de lógica. No tiene sentido querer imprimir algo en pantalla si después vas a redireccionar.