return EXIT_FAILURE on error for portability reasons