<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office"><head><!--[if gte mso 9]><xml><o:OfficeDocumentSettings><o:AllowPNG/><o:PixelsPerInch>96</o:PixelsPerInch></o:OfficeDocumentSettings></xml><![endif]--></head><body><div class="ydp14c1565byahoo-style-wrap" style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:16px;"><div><div dir="ltr" data-setdir="false">It’s a great info, Jonas. Thank you.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">I didn’t know FPC has -M option for $modeswitch. Based on the official document¹, the -M option is to select language modes, not language features.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">I know changing language mode would reset mode switches. It’s no problem for me because I wrote the code and I stick to ObjFPC mode for all the code, no exception. But I want to use advanced record feature as well. By setting the language mode and language features in the global config, I don’t need to write them in every single file.</div><div dir="ltr" data-setdir="false"><br></div><div class="ydp14c1565bsignature"><div style="font-family:Helvetica, Arial, sans-serif;font-size:16px;"><div dir="ltr"><br></div>–Mr Bee</div><div style="font-family:Helvetica, Arial, sans-serif;font-size:16px;"><br></div><div style="font-family:Helvetica, Arial, sans-serif;font-size:16px;">_____</div><div style="font-family:Helvetica, Arial, sans-serif;font-size:16px;" dir="ltr" data-setdir="false">¹ <a href="https://www.freepascal.org/docs-html/user/userap1.html" rel="nofollow" target="_blank" class="enhancr_card_1192231693">A Alphabetical listing of command line options</a><br><div><br></div></div><div><br></div><div id="ydp3624b246enhancr_card_1192231693" class="ydp3624b246yahoo-link-enhancr-card ydp3624b246yahoo-link-enhancr-not-allow-cover ydp3624b246ymail-preserve-class ydp3624b246ymail-preserve-style" style="max-width:400px;font-family:Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif" data-url="https://www.freepascal.org/docs-html/user/userap1.html" data-type="YENHANCER" data-size="MEDIUM" contenteditable="false"><a href="https://www.freepascal.org/docs-html/user/userap1.html" style="text-decoration:none !important;color:#000 !important" class="ydp3624b246yahoo-enhancr-cardlink" rel="nofollow" target="_blank"><table border="0" class="ydp3624b246card-wrapper ydp3624b246yahoo-ignore-table" cellpadding="0" cellspacing="0" style="max-width:400px"><tbody><tr><td width="400"><table border="0" class="ydp3624b246card ydp3624b246yahoo-ignore-table" cellpadding="0" cellspacing="0" width="100%" style="max-width:400px;border-width:1px;border-style:solid;border-color:rgb(224, 228, 233);border-radius:2px"><tbody><tr><td><table border="0" class="ydp3624b246card-info ydp3624b246yahoo-ignore-table" cellpadding="0" cellspacing="0" style="background:#fff;position:relative;z-index:2;width:100%;max-width:400px;border-radius:0 0 2px 2px;border-top:1px solid rgb(224, 228, 233)"><tbody><tr><td style="background-color:#ffffff;padding:16px 0 16px 12px;vertical-align:top;border-radius:0 0 0 2px"></td><td style="vertical-align:middle;padding:12px 24px 16px 12px;width:99%;font-family:Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif;border-radius:0 0 2px 0"><h2 class="ydp3624b246card-title" style="font-size: 14px; line-height: 19px; margin: 0px 0px 6px; font-family: Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif; color: rgb(38, 40, 42);">A Alphabetical listing of command line options</h2><p class="ydp3624b246card-description" style="font-size: 12px; line-height: 16px; margin: 0px; color: rgb(151, 155, 167);"></p></td></tr></tbody></table></td></tr></tbody></table></td></tr></tbody></table></a></div><div><br></div><div><br></div></div></div>
        <div><br></div><div><br></div>
        
        </div><div id="yahoo_quoted_1372327811" class="yahoo_quoted">
            <div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
                
                <div>
                    Pada Rabu, 5 Februari 2020 02.30.04 WIB, Jonas Maebe <jonas@freepascal.org> menulis:
                </div>
                <div><br></div>
                <div><br></div>
                <div><div dir="ltr">On 04/02/2020 10:06, Mattias Gaertner via fpc-pascal wrote:<br clear="none">> As Sven explained a $mode resets all modeswitches.<br clear="none">> What you need is a switch to alter modeswitch of a mode. And<br clear="none">> there is currently no such switch.<br clear="none">> <br clear="none">> For example a syntax could be:<br clear="none">> -MObjFPC+AdvancedRecords+AnsiStrings-NestedComments<br clear="none"><br clear="none">$ cat tt.pp<br clear="none">program x;<br clear="none"><br clear="none">{{test }<br clear="none"><br clear="none">type<br clear="none">  tr = record<br clear="none">    procedure test;<br clear="none">  end;<br clear="none"><br clear="none">  procedure tr.test;<br clear="none">    begin<br clear="none">    end;<br clear="none"><br clear="none">begin<br clear="none">  writeln(sizeof(string));<br clear="none">end.<br clear="none"><br clear="none">$ fpc -MObjFPC -Madvancedrecords -Mansistrings -Mnestedcomments- tt<br clear="none">Free Pascal Compiler version 3.0.4 [2018/09/30] for x86_64<br clear="none">Copyright (c) 1993-2017 by Florian Klaempfl and others<br clear="none">Target OS: Darwin for x86_64<br clear="none">Compiling tt.pp<br clear="none">Assembling (pipe) tt.s<br clear="none">Linking tt<br clear="none">16 lines compiled, 0.1 sec<br clear="none"><br clear="none">$ ./tt<br clear="none">8<br clear="none"><br clear="none">Setting a different mode resets all modeswitches to the default for that<br clear="none">mode (since that's one of the main points of a mode). Setting a<br clear="none">different modeswitch does not reset anything.<br clear="none"><br clear="none"><br clear="none">Jonas<div class="yqt7859894401" id="yqtfd89232"><br clear="none">_______________________________________________<br clear="none">fpc-pascal maillist  -  <a shape="rect" ymailto="mailto:fpc-pascal@lists.freepascal.org" href="mailto:fpc-pascal@lists.freepascal.org">fpc-pascal@lists.freepascal.org</a><br clear="none"><a shape="rect" href="https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal" target="_blank">https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal</a><br clear="none"></div></div></div>
            </div>
        </div></body></html>