Up to and including 2.6.4, this works:

        TRoundRobin= CLASS(TObject)
..
                     PUBLIC
..
(*$IFDEF HAS_TRUE YIELD *)
                       PROPERTY HasTrueYield: BOOLEAN DEFAULT TRUE;
(*$ELSE         *)
                       PROPERTY HasTrueYield: BOOLEAN DEFAULT FALSE;
(*$ENDIF        *)
..
                     END;

However using 3.0.0 rc1 I get

roundrobin.pas(80,55) Fatal: Syntax error, "READ" expected but "identifier DEFAULT" found

It looks as though this was coded for a facility that wasn't actually used, but that the intention was to convert a compile-time conditional into something that could be incorporated into an ordinary boolean expression.

What is the correct syntax, and how far back is FPC compatible with it?

--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]
_______________________________________________
fpc-devel maillist  -  [email protected]
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to