Thema: Delphi Problem mit FPC Define

Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.035 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

AW: Problem mit FPC Define

  Alt 29. Okt 2023, 11:36
Wenn man schon legacyifend nutzt, dann muss das auch überall getan werden, einige stellen innerhalb des fehlerhaften Teils taten dies nicht (scheinbar kann FPC da auch inzwischen mit nem endif umgehen). Außerdem scheint es den Delphi Compiler hier ein bisschen aus den Socken zu hauen, dass man direkt FPC_FULLVERSION checkt, ein zusätzliches declared behebt das.

Ob das jetzt unter FPC kompiliert? Kein Plan, war nicht meine Aufgabe

Delphi-Quellcode:
//------------------------------------------------------------------------------
// FPC v2.x support (Experimental)
//------------------------------------------------------------------------------

{$IFDEF FPC}
  {$UNDEF DELPHIORBCB}

  // fpc supports assembler
  //{$DEFINE PUREPASCAL}

  {$DEFINE NATIVEINT_UNDEFINED}


  {$IF declared(FPC_FULLVERSION) and (FPC_FULLVERSION >= 30300)}
       {$DEFINE HAVE_LAMBDAS}
  {$IFEND}

  // use compatibility mode
  {$MODE DELPHI}
  {$IFDEF HAVE_LAMBDAS}
          {$modeswitch functionreferences}
          {$modeswitch anonymousfunctions}
  {$ENDIF}

  {$DEFINE HAVE_ASSIGN_ARRAY}

  // defines for Mac OS X
  {$IFDEF DARWIN}
    {$DEFINE MACOS}
    {$DEFINE ALIGN_STACK}
  {$ENDIF}

  // define delphi-style CPU-width
  {$ifdef CPU64}
    {$define CPU64BITS}
  {$else} {$if defined(CPU32) }
    {$define CPU32BITS}
  {$ifend}{$endif}

  {$ASMMODE intel}

{$ELSE}
       // assume delphi have "reference to" feature
       {$define HAVE_LAMBDAS}
{$ENDIF FPC}
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat