Не работают ли условные выражения внутри пакетов?

Рассмотрим следующий фрагмент:

requires
  designide,
  rtl,
  vcl,
  {$IF RTLVersion < 19.0}            // E2026 Constant expression expected
  //{$IF CompilerVersion = 22.0}     // same as above
  vcljpg;
  {$ELSE}
  vclimg;
  {$IFEND}

Он кажется абсолютно синтаксически правильным. Однако компилятор подавляет его и сообщает Ожидается постоянное выражение . Что здесь происходит на самом деле?

Технические: в настоящее время тестируется только на XE (15.0.3953.35171).

Конечно, предложения по обходному пути также приветствуются.

7
задан Lieven Keersmaekers 29 November 2011 в 07:40
поделиться