Delphi 为什么这个简单的代码不能在ios 64位上编译?

Delphi 为什么这个简单的代码不能在ios 64位上编译?,delphi,Delphi,我不明白为什么这段代码不能在ios 64位上编译。 unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs; type TForm1 = class(TForm) private { Pr

我不明白为什么这段代码不能在ios 64位上编译。

unit Unit1;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs;

type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.fmx}

type
  TRDLVector = record
    case Byte of
      0 : (dw : DWord);
      1 : (bt : array[0..3] of Byte);
    end;

function RdlSubVector(const v : TRDLVector) : TRDLVector;
begin
end;

end.
这是给我的回报:

[DCC错误]Unit1.pas(37):E2581后端错误:函数返回类型 与返回指令的操作数类型不匹配!放弃!dbg!20074 i64

它在Delphi10.1(柏林)上编译正常,但在Delphi10.2(东京)上编译失败

这是虫子还是我做错了什么


注意:
TRDLVector=record
更改为
TRDLVector=packed record
使其正常工作,不明白为什么看起来像编译器错误。提交错误报告。@DavidHeffernan Done:。。我还发现,设置打包记录而不是记录可以修复problem@MartynA,不,我有10.2.3最新版本的最新版本(上周下载),不在IOS 64位上编译(在其他版本上,如win32或IOS 32位上是的,它是编译的)