#1 2020-03-04 16:33:55

Vitaly
Member
From: UAE
Registered: 2017-01-31
Posts: 168
Website

mORMot.pas compilation error (10.3.3, win64)

After today's changes, I faced problems with mORMot.pas compilation:

[dcc64 Error] mORMot.pas(57677): E2107 Operand size mismatch
[dcc64 Error] mORMot.pas(58046): E2066 Missing operator or semicolon
[dcc64 Error] mORMot.pas(58171): E2066 Missing operator or semicolon 

Delphi 10.3.3, Win64 target platform

Offline

#2 2020-03-04 16:50:42

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,206
Website

Re: mORMot.pas compilation error (10.3.3, win64)

Oups...
https://github.com/synopse/mORMot/pull/275 broke Delphi Win64 compilation.
FPC was less paranoid about its asm.

Please check https://synopse.info/fossil/info/5677a31a9c

Offline

#3 2020-03-04 18:35:13

Vitaly
Member
From: UAE
Registered: 2017-01-31
Posts: 168
Website

Re: mORMot.pas compilation error (10.3.3, win64)

Yes, all seems fine, now. Thanks! smile

Offline

#4 2020-03-09 08:58:37

zhyhero
Member
Registered: 2018-01-10
Posts: 10

Re: mORMot.pas compilation error (10.3.3, win64)

demo1  compile error
win10 64   
delphi 10.3.3 target platform win32     
[dcc32 Error] mORMot.pas(44390): E2003 Undeclared identifier: 'IsObjArray'





I found...

mORMot.pas(44390):      fValues.{$ifdef UNDIRECTDYNARRAY}InternalDynArray.{$endif}IsObjArray := true;
Synopse.inc(407):          {$define UNDIRECTDYNARRAY}


And file location...

/(root folder)
       Synopse.inc
/SQLite3(sub folder)
       mORMot.pas


So I changed...

mORMot.pas(71):           {$I Synopse.inc} // define HASINLINE CPU32 CPU64     ⋙   {$I ../Synopse.inc} // define HASINLINE CPU32 CPU64

Compile Success...

Is this right ?

Last edited by zhyhero (2020-03-10 03:07:36)

Offline

Board footer

Powered by FluxBB