Почему {$ ifopt FINITEFLOAT ON} не компилируется? - PullRequest
7 голосов
/ 01 сентября 2010

У меня есть конструкция:

{$ifopt FINITEFLOAT ON}
  {$message 'FINITEFLOAT option ON' }
{$else }
  {$message 'FINITEFLOAT option OFF' }
{$endif }

в моем источнике, и он не скомпилируется! Это должно быть что-то глупое. Ошибка:

E1030 Неверная директива компилятора: '$ IFOPT'

в первой строке, но это FINITEFLOAT, на который он жалуется. Кажется, вы не можете указать ничего, кроме однобуквенных директив, таких как R + и т. Д., В качестве аргумента IFOPT.

Я что-то здесь упускаю?

Ответы [ 2 ]

5 голосов
/ 01 сентября 2010

Вы совершенно правы. Я не использую $IFOPT часто, но каждый раз, когда я делаю , это поведение меня раздражает. Я понятия не имею, почему это реализовано таким образом.

Редактировать: Существует Центральная проблема качества для этого .

1 голос
/ 13 ноября 2010

Правда, вы не можете :( Это потому, что IFOPT рассматривается как функция обратной совместимости и не работает с какими-либо расширенными директивами. Например: {$A2} можно установить, но не восстановить обратно

...