<div dir="auto"><div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Adriaan van Os via fpc-pascal <<a href="mailto:fpc-pascal@lists.freepascal.org">fpc-pascal@lists.freepascal.org</a>> schrieb am Fr., 13. Okt. 2023, 11:02:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Michael Van Canneyt via fpc-pascal wrote:<br>
> <br>
> <br>
> On Wed, 11 Oct 2023, Adriaan van Os via fpc-pascal wrote:<br>
> <br>
>> Michael Van Canneyt via fpc-pascal wrote:<br>
>><br>
>>> $M controls the inclusion of RTTI, i.e. it allows or disallows the <br>
>>> use of the published section.<br>
>>> No more, no less.<br>
>><br>
>> I don't see any use in allowing or disallowing something. And with the <br>
>> current design, it is, as I said, impossible, without macros, to <br>
>> compile the same code with {$M+} and {$M-}.<br>
> <br>
> While I agree with your statement about allowing/disallowing use of<br>
> 'published' based on a directive, we inherited this from Delphi and it <br>
> is a very basic part of the language & RTL, so changing it is simply not <br>
> an option.<br>
<br>
Well, as I said, adding a new visibility specifier, e.g. "visible", meaning "public" in {$M-} state <br>
and "published" in {$M=}", does in no way degrade compatibility with Delphi code. One could reserve <br>
the new visibility specifier for modes objfpc and macpas.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">There will be no new visibility specifiers for something like this. </div><div dir="auto"><br></div><div dir="auto">And yes, it affects compatibility, as that means that code using that feature couldn't be compiled with Delphi and especially for library developers that might be an important point. </div><div dir="auto"><br></div><div dir="auto">Regards, </div><div dir="auto">Sven</div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
</blockquote></div></div></div>