<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Am 21.05.2018 um 01:36 schrieb Maciej
Izak:<br>
</div>
<blockquote type="cite"
cite="mid:CAFTppY5WF_HsxvtUv9VsEYmztW+NhO6xyX=W1LiKnNNnhCun8g@mail.gmail.com">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">2018-05-21 0:52 GMT+02:00 Sven Barth
via fpc-pascal <span dir="ltr"><<a
href="mailto:fpc-pascal@lists.freepascal.org"
target="_blank" moz-do-not-send="true">fpc-pascal@lists.freepascal.org</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div dir="auto"><span class="gmail-">
<div>
<div class="gmail_quote">
<div dir="ltr">The thing is that I can easily
imagine the Delphi devs to be so stoned to use
the "[...]" for static arrays inside dynamic
arrays as well which could lead to constructs
like the following because they forget that
dynamic arrays could be part of static arrays as
well:<br>
</div>
</div>
</div>
</span><span class="gmail-">
<div dir="auto"><br>
</div>
<div dir="auto">=== code begin ===</div>
<div dir="auto"><br>
</div>
<div dir="auto">var</div>
</span>
<div dir="auto"> v: array[0..2] of array of array[0..2]
of LongInt = ([[1, 2, 3], [4, 5, 6]], [], [[7, 8,
9]]);</div>
<div dir="auto"><br>
</div>
<div dir="auto">=== code end ===</div>
<div dir="auto"><br>
</div>
<div dir="auto">Yes, I have absolutely no confidence in
the Delphi developers. </div>
</div>
</blockquote>
<div><br>
</div>
<div>Sometimes they have fantasy ^^. Don't underestimate
them, I am sure they can do something more unexpected ;)
For NewPascal mode I see this like :</div>
<div><br>
</div>
<div>
<div>var</div>
<div> v: array[0..2] of array of array[0..2] of LongInt =
([(1, 2, 3), (4, 5, 6)], [], [(7, 8, 9)]);</div>
</div>
<div> </div>
</div>
</div>
</div>
</blockquote>
<br>
That is at least what I would *expect* for Delphi as well. And no,
I'm definitely not underestimating their ability to come up with
strange syntaxes... Do I do prefer not to think about it too much to
avoid nightmares :P<br>
<br>
<blockquote type="cite"
cite="mid:CAFTppY5WF_HsxvtUv9VsEYmztW+NhO6xyX=W1LiKnNNnhCun8g@mail.gmail.com">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div dir="auto"><span class="gmail-">
<div dir="auto">I don't want to use a modeswitch for
every tiny little bit of feature. What we could do
however would be a modeswitch for a strict Delphi
mode that prohibits extensions and code that does
not work in Delphi (like global operators and global
generic functions). This could be used for code that
is shared with Delphi to avoid potentially breaking
compilability with Delphi if one is mainly using FPC
for testing.</div>
</span></div>
</blockquote>
<div><br>
</div>
<div>IMO potentially breaking compatibility is better
than lock/prohibition for missing features in Delphi (or
waiting for Delphi implementation). Programmers are not
stupid and most of Delphi users knows what Delphi have and
what can be potentially risky. We have tons of examples
which should be disabled in Delphi mode but it works for
comfort. r39045 is for sure not comfortable IMO without
real important reason, but this is just my opinion.</div>
</div>
</div>
</div>
</blockquote>
<br>
I've decided to lift the restriction again in r39078. Happy now?<br>
<br>
Regards,<br>
Sven<br>
</body>
</html>