Serve.cfg:problem:disable stderr

From EjudgeWiki
Revision as of 08:11, 27 December 2011 by Cher (talk | contribs)

Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/serve.cfg/Конфигурационные параметры задач/disable_stderr

Данная конфигурационная переменная позволяет запретить вывод тестируемой программы на стандартный поток ошибок (stderr, cerr, System.err...).

По умолчанию вывод тестируемой программы на стандартный поток ошибок игнорируется. Он сохраняется в протоколе тестирования, но не влияет на вердикт тестирования. Если конфигурационная переменная disable_stderr установлена в положительное значение, то вывод программы на стандартный поток ошибок учитывается. Если программа вывела что-либо на стандартный поток ошибок на некотором тесте, то тестируемая программа получает вердикт Presentation error. Вывод программы на стандартный поток вывода или в файл (как требуется в условии задачи) не проверяется, тестирующая программа не запускается.

Проверка вывода на стандартный поток ошибок выполняется после:

  • проверки превышения лимита времени выполнения программы (time-limit exceeded);
  • проверки корректности завершения программы (что программа завершилась не из-за сигнала и с кодом завершения 0) (run-time error);
  • проверки ограничений по памяти (memory limit exceeded);
  • проверки нарушений политики безопасности (security violation).

Конифигурационная переменная disable_stderr может устанавливаться в описании абстрактной задачи, и ее значение будет унаследовано в конкретных задачах. Если конфигурационная переменная установлена в положительное значение в абстрактной задача, но в некоторой конкретной задаче необходимо ее сбросить, то в разделе описания конкретной задачи нужно явно установить ее значение в 0.

[problem]
disable_stderr = 0

Для отдельных тестов режим запрета вывода на стандартный поток ошибок может изменяться с помощью .inf-файла теста. Параметр disable_stderr в .inf-файле управляет режимом запрета вывода для конкретного теста, а параметр check_stderr - режимом сравнения вывода с эталонным ответом.