Re: [fpc-devel] new rtl- packages
Hoi, Marco, native win32 ben je vergeten. matrix... Groetjes, Thaddy On 6-1-2014 13:10, Marco van de Voort wrote: To whom it may concern, fyi The RTL was getting quite big, and is compiled 4-5 times per make all, so with a major branch splitting off in the next half year and the end of the 2.6.x branch, it was considered time to move some of them to packages. As some of you might have noticed, the first such rearrangements have been made, three new packages have been created, containing the units listed below. rtl-extra : objects matrix ucomplex rtl-objpas : convutil(s) dateutil(s) stdconvs variants varutils rtl-console: crt video keyboard mouse Another package (rtl-unicode?) with encoding table units will follow in the coming weeks, and more units will be moved to rtl-extra. This work is done in pieces because with 30+ rtl/xxx/Makefile.fpc to edit, it is a bit sensitive. If you get an error compiling the RTL or a package due to a missing unit on trunk, don't hesitate to report it here. Thank you. Marco ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel smime.p7s Description: S/MIME Cryptographic Signature ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[fpc-devel] programmers guide 2.6 issue
In Pascal programmers guide v2.6 Feb 2013 it explains how to use {$I ... } to include compiler information eg version string, time string etc so one can include eg in a writeln, but it does not mention not the optimisation level at which program was compiled. Is this an omission or is this info elsewhere? If so where 7 how do I do it please? TIA John ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] programmers guide 2.6 issue
Hi John, in the scanner.pas unit procedure dir_include, code starting around line 2324 on current trunk, you can see that there are only a few special names allowed. If there is no match, the compiler looks for an environment string with that name. This might be the solution for your problem... Otherwise you can try to submit a patch adding such an option. Pierre -Message d'origine- De : fpc-devel-boun...@lists.freepascal.org [mailto:fpc-devel- boun...@lists.freepascal.org] De la part de John Lee Envoyé : mercredi 8 janvier 2014 14:21 À : FPC developers' list Objet : [fpc-devel] programmers guide 2.6 issue In Pascal programmers guide v2.6 Feb 2013 it explains how to use {$I ... } to include compiler information eg version string, time string etc so one can include eg in a writeln, but it does not mention not the optimisation level at which program was compiled. Is this an omission or is this info elsewhere? If so where 7 how do I do it please? TIA John ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Explanation about code page-aware AnsiStrings
Jonas Maebe schrieb: http://wiki.freepascal.org/FPC_Unicode_support (only Sections 1 to 3; 4 and later are older and mostly either incomplete or wishful thinking). Just a note on RawByteString concatenation: Delphi concatenates RawByteStrings to the dynamic encoding of the *first* string, the appended strings eventually are converted before concatenation. Special handling of strings with the same encoding is not required. I.e. the result is *not* always a CP_ACP string, as documented in the wiki. Please adjust the implementation accordingly, it makes the RawByteStrings much more useful. The handling of automatic conversions may be unified in general, when concatenated strings are assigned to a target of a known encoding; in this case the target encoding can be used for the result, instead of the encoding of the first string, the remaining concatenation process can be the same. On OEMString: CP_OEM (=1) works differently from CP_ACP (=0). Variables of type AnsiString(CP_OEM) will always have dynamic encoding CP_OEM, no substitution to a specific OEM codepage. CP_ACP strings instead have a dynamic encoding of the current DefaultSystemCodepage. DoDi ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] programmers guide 2.6 issue
Thanks - I'd thought that I'd seen somewhere (here?) that one could get the opt info into compiler string somehow thought it'd be there hence so doc . Maybe it is somewhere else not under {I ...}? On 8 January 2014 13:35, Pierre Free Pascal pie...@freepascal.org wrote: Hi John, in the scanner.pas unit procedure dir_include, code starting around line 2324 on current trunk, you can see that there are only a few special names allowed. If there is no match, the compiler looks for an environment string with that name. This might be the solution for your problem... Otherwise you can try to submit a patch adding such an option. Pierre -Message d'origine- De : fpc-devel-boun...@lists.freepascal.org [mailto:fpc-devel- boun...@lists.freepascal.org] De la part de John Lee Envoyé : mercredi 8 janvier 2014 14:21 À : FPC developers' list Objet : [fpc-devel] programmers guide 2.6 issue In Pascal programmers guide v2.6 Feb 2013 it explains how to use {$I ... } to include compiler information eg version string, time string etc so one can include eg in a writeln, but it does not mention not the optimisation level at which program was compiled. Is this an omission or is this info elsewhere? If so where 7 how do I do it please? TIA John ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Explanation about code page-aware AnsiStrings
Am 08.01.2014 15:58 schrieb Hans-Peter Diettrich drdiettri...@aol.com: Delphi concatenates RawByteStrings to the dynamic encoding of the *first* string, the appended strings eventually are converted before concatenation. Special handling of strings with the same encoding is not required. I.e. the result is *not* always a CP_ACP string, as documented in the wiki. Would you be so kind to provide a simple test case for this? :) Regards, Sven ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] programmers guide 2.6 issue
Am 08.01.2014 14:21 schrieb John Lee johnel...@gmail.com: In Pascal programmers guide v2.6 Feb 2013 it explains how to use {$I ... } to include compiler information eg version string, time string etc so one can include eg in a writeln, but it does not mention not the optimisation level at which program was compiled. Is this an omission or is this info elsewhere? If so where 7 how do I do it please? The optimizations are local not global, so it wouldn't make much sense to include such a functionality as they would only show you the currently active optimizations. Regards, Sven ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Explanation about code page-aware AnsiStrings
Sven Barth schrieb: Am 08.01.2014 15:58 schrieb Hans-Peter Diettrich drdiettri...@aol.com mailto:drdiettri...@aol.com: Delphi concatenates RawByteStrings to the dynamic encoding of the *first* string, the appended strings eventually are converted before concatenation. Special handling of strings with the same encoding is not required. I.e. the result is *not* always a CP_ACP string, as documented in the wiki. Would you be so kind to provide a simple test case for this? :) function test(a,b: RawByteString): RawByteString; begin Result := a+b; WriteLn(StringCodePage(Result)); end; var u: UTF8String; a: AnsiString; begin a := 'äöü'; u := 'üöä'; test(a,u); //CP_ACP test(u,a); //UTF-8 end; It looks to me, however, that no conversion occurs at all! The strings are only concatenated as they are. Same for a concatenation of (global) RawByteString variables. This of course were not a desireable implementation :-( DoDi ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Explanation about code page-aware AnsiStrings
On 08.01.2014 19:57, Hans-Peter Diettrich wrote: Sven Barth schrieb: Am 08.01.2014 15:58 schrieb Hans-Peter Diettrich drdiettri...@aol.com mailto:drdiettri...@aol.com: Delphi concatenates RawByteStrings to the dynamic encoding of the *first* string, the appended strings eventually are converted before concatenation. Special handling of strings with the same encoding is not required. I.e. the result is *not* always a CP_ACP string, as documented in the wiki. Would you be so kind to provide a simple test case for this? :) function test(a,b: RawByteString): RawByteString; begin Result := a+b; WriteLn(StringCodePage(Result)); end; var u: UTF8String; a: AnsiString; begin a := 'äöü'; u := 'üöä'; test(a,u); //CP_ACP test(u,a); //UTF-8 end; It looks to me, however, that no conversion occurs at all! The strings are only concatenated as they are. Same for a concatenation of (global) RawByteString variables. This of course were not a desireable implementation :-( I'm inclined to say of course, because in your test function you are concatenating two RawByteStrings which - by definition - don't do any conversion. Regards, Sven ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] DOS GUI
On Dec 26, 2013, at 1:17 PM, Jim Leonard wrote: On 12/26/2013 11:35 AM, Pierre Free Pascal wrote: It would be nice to have it publicly available. Seconded. I agree with this assessment as well. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] programmers guide 2.6 issue
You are making it sound v complicated - but the settings eg for the main program eg might be -O3 or -O2 or something are meaningful - most people don't mess with them anyway. I feel sure that I've seen somewhere how to get them into compiler string, but can't remember how! J On 8 January 2014 18:05, Sven Barth pascaldra...@googlemail.com wrote: Am 08.01.2014 14:21 schrieb John Lee johnel...@gmail.com: In Pascal programmers guide v2.6 Feb 2013 it explains how to use {$I ... } to include compiler information eg version string, time string etc so one can include eg in a writeln, but it does not mention not the optimisation level at which program was compiled. Is this an omission or is this info elsewhere? If so where 7 how do I do it please? The optimizations are local not global, so it wouldn't make much sense to include such a functionality as they would only show you the currently active optimizations. Regards, Sven ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] programmers guide 2.6 issue
Am 08.01.2014 22:16 schrieb John Lee johnel...@gmail.com: You are making it sound v complicated - but the settings eg for the main program eg might be -O3 or -O2 or something are meaningful - most people don't mess with them anyway. I feel sure that I've seen somewhere how to get them into compiler string, but can't remember how! This would then only work plausably if the function which uses that optimization to string functionality is defined inside the main program as each unit can be compiled differently. Also -O2, etc. are not the only optimization parameters: every specific optimization can be switched on and off independently of the optimization level and then there's also the whole program optimization. So you see that this is not trivial. Regards, Sven ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Explanation about code page-aware AnsiStrings
Sven Barth schrieb: On 08.01.2014 19:57, Hans-Peter Diettrich wrote: It looks to me, however, that no conversion occurs at all! The strings are only concatenated as they are. Same for a concatenation of (global) RawByteString variables. This of course were not a desireable implementation :-( I'm inclined to say of course, because in your test function you are concatenating two RawByteStrings which - by definition - don't do any conversion. I cited what I've been told in the EMBT groups - that a conversion is made when required. Everything else doesn't make sense. DoDi ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Explanation about code page-aware AnsiStrings
On 08.01.2014 23:54, Hans-Peter Diettrich wrote: Sven Barth schrieb: On 08.01.2014 19:57, Hans-Peter Diettrich wrote: It looks to me, however, that no conversion occurs at all! The strings are only concatenated as they are. Same for a concatenation of (global) RawByteString variables. This of course were not a desireable implementation :-( I'm inclined to say of course, because in your test function you are concatenating two RawByteStrings which - by definition - don't do any conversion. I cited what I've been told in the EMBT groups - that a conversion is made when required. Everything else doesn't make sense. And your example proves otherwise... Regards, Sven ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel