icnhoukdsiih / testlib

Automatically exported from code.google.com/p/testlib
0 stars 0 forks source link

Исправления, внесенные в testlib.h на летних школьных сборах: #3

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
1) Сделана замена random ---> Random
Чтобы поддержать совместимость с новым 
linux-овым g++ (где есть стандартный
random)

2) Нам нужно было поддерживать результат 
чекера "partial correct", поэтому:
***** testlib.h
 1103: default:
 1104:     quit(_fail, "What is the code ??? ");
 1105: }
 ...
 1115: fprintf(resultFile, "<result outcome = \"%s\">",
outcomes[(int)result].c_str());

***** our_testlib.H
 1004: const static WORD Yellow = 0x0e;
 ...
 1113: default:
 1114:     errorName = "partially correct ";
 1115:     quitscrS(Yellow, errorName);
 1116:     break;
 1117: }
 ...
 1127: fprintf(resultFile, "<result outcome = \"%s\">", outcomes[result > 4
? 5 : result].c_str());

*****

3) Изменения, внесенные кем-то еще:

  690:          if (__pattern_isCommandChar(s, pos, '+'))
  691:          {
  692:              from = 1, to = INT_MAX, pos++;
  693:              return;
  694:          }

С уважением,
Сергей Копелиович.

Original issue reported on code.google.com by Burunduk30 on 14 Aug 2009 at 9:40

Attachments:

GoogleCodeExporter commented 8 years ago
Спасибо,

1. Про random:
Поясни, что там за random, так как в стандарте 
C++ никакого random я не знаю. Есть 
такие функции в Borland C++, но для них есть #define 
random __random_depricated перед #include <stdlib.h>. Я 
тестировал под linux компиляцию и 
работоспособность всех *.cpp 
файлов в дистрибутиве. Может это какое 
нововведение в gcc 4.

2. В самом деле, поддержать надо. Замечу, что 
в pascal testlib это дело по разному 
поддержано в ifmo и spbu версиях. Я попробую 
поговорить с Андреями по поводу того, 
как это сделано у них.

3. Все верно, был баг. У меня он байт-в-байт 
был исправлен.

Original comment by mirzayan...@gmail.com on 6 Sep 2009 at 8:54

GoogleCodeExporter commented 8 years ago
Про рандом - это правда нововведение в 4-м 
linux-овом g++.
Я сам живу под Windows, пользуюсь до сих пор 3.4.2, 
так что с подобными
багами не сталкивался. Проблема была у Юры 
Петрова и Андрея Лопатина.

Original comment by Burunduk30 on 7 Sep 2009 at 9:57

GoogleCodeExporter commented 8 years ago
Partical correctness поддержал, баг поправил. C random не 
понятно, что имелось ввиду. 
Вероятно, если помещать testlib.h в самый 
верхний include, то проблем не будет.

Original comment by mirzayan...@gmail.com on 8 Sep 2009 at 9:41