E2012 式の結果は Boolean 型でなければなりません (Delphi)
エラーと警告のメッセージ(Delphi) への移動
このエラーメッセージが出力されるのは,ある式が条件として機能しており,したがってその式が論理型でなければならないときです。たとえば,if,while,repeat 文の制御式や,条件ブレークポイントを制御する式の場合などです。
program Produce; var P: Pointer; begin if P then Writeln('P <> nil'); end.
{ ここで C++ プログラマは if 文の条件としてポインタ変数を使った }
program Solve; var P: Pointer; begin if P <> nil then Writeln('P <> nil'); end.
{ この場合,Delphi ではより明示的に指定する必要がある }