E2107 オペランドサイズの不一致 (Delphi)

提供: RAD Studio
移動先: 案内検索

エラーと警告のメッセージ(Delphi) への移動

命令のオペランドが必要とするサイズが,指定されたサイズに一致しません。


program Produce;

  var
    v : Integer;

  procedure Assembly;
  asm
    db offset v
  end;

begin
end.

{ この Delphi コードでは,offset 演算子は dword を生成するが,この演算子が byte を必要とするのでコンパイルエラーになる }


program Solve;

  var
    v : Integer;

  procedure Assembly;
  asm
    dd offset v
  end;

begin
end.

この例に限れば,演算子が dword を受け取るように変更すれば解決できる。一般には,コードをよく調べて演算子とオペランドのサイズを常に一致させる必要がある