Hello everybody. I think that the proposition of Code DZ is a "must be done" (first of all, fix the Warnings at compilation using fpc 3.0.4).
Here are all the warnings while compiling mseide with fpc 3.0.4. You may see that all the warnings are about string type conversion in procedurelistform.pas. Free Pascal Compiler version 3.0.4 [2017/10/03] for x86_64 Copyright (c) 1993-2017 by Florian Klaempfl and others Target OS: Linux for x86-64 Compiling mseide.pas procedurelistform.pas(153,26) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString" procedurelistform.pas(159,64) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(224,43) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(226,52) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(228,54) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(230,57) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(279,44) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString" procedurelistform.pas(290,57) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString" procedurelistform.pas(292,56) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString" procedurelistform.pas(532,36) Warning: Implicit string type conversion from "RawByteString" to "UnicodeString" procedurelistform.pas(542,63) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(678,51) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(797,47) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString" Linking mseide /usr/bin/ld : avertissement : link.res contient des sections de sortie; avez-vous oublié -T? 666154 lines compiled, 19.7 sec 14 warning(s) issued 19 note(s) issued Using UTF8Decode(thestring) fixes all the warnings, example: grdProcedures.Items[c] := UTF8Decode(IntToStr(i)); Sadly I am not pro with Unicode things and dont dare to change something about this. Maybe the creator of procedurelistform.pas (Graeme) could help for this (or agree to use UTF8Decode(thestring) and I will commit it.) Now about compiling mseide with fpc 3.2.0 beta. You may see that most of all the warnings are about range check error or string type conversion. @Code DZ, huh, me too I am lost, I did try to fix some range check error but without luck, I do not understand some warning messages, like for example: "msedatalist.pas(891,18) Warning: range check error while evaluating constants (-193 must be between 0 and 255)" How can the compiler evaluate the constant and give -193 as result? mystery... That said, imho those Warnings are not terrible and sure it would be a funny game for a guru to fix it. I will try but maybe somebody could see what wrong much faster and better than me. Here all the Warnings generated by fpc 3.2.0 at compilation of mseide: Free Pascal Compiler version 3.2.0-beta [2020/02/17] for x86_64 Copyright (c) 1993-2020 by Florian Klaempfl and others Target OS: Linux for x86-64 Compiling mseide.pas msedatalist.pas(891,18) Warning: range check error while evaluating constants (-193 must be between 0 and 255) msedrawtext.pas(262,10) Warning: range check error while evaluating constants (-1 must be between 0 and 3) msedrawtext.pas(1115,48) Warning: range check error while evaluating constants (-1 must be between 0 and 3) msescrollbar.pas(429,17) Warning: range check error while evaluating constants (-1 must be between 0 and 4) msescrollbar.pas(640,11) Warning: range check error while evaluating constants (-1 must be between 0 and 4) msescrollbar.pas(957,28) Warning: range check error while evaluating constants (-1 must be between 0 and 4) msescrollbar.pas(958,37) Warning: range check error while evaluating constants (-1 must be between 0 and 4) msescrollbar.pas(984,18) Warning: range check error while evaluating constants (-1 must be between 0 and 4) msescrollbar.pas(1002,20) Warning: range check error while evaluating constants (5 must be between 0 and 4) msescrollbar.pas(1041,13) Warning: range check error while evaluating constants (-1 must be between 0 and 4) msescrollbar.pas(1042,10) Warning: range check error while evaluating constants (5 must be between 0 and 4) msescrollbar.pas(1046,9) Warning: range check error while evaluating constants (-1 must be between 0 and 4) msescrollbar.pas(1048,12) Warning: range check error while evaluating constants (-1 must be between 0 and 4) msescrollbar.pas(1054,13) Warning: range check error while evaluating constants (-1 must be between 0 and 4) msescrollbar.pas(1060,23) Warning: range check error while evaluating constants (-1 must be between 0 and 4) msescrollbar.pas(1656,27) Warning: range check error while evaluating constants (-1 must be between 0 and 4) msedataedits.pas(6134,14) Warning: range check error while evaluating constants (-1 must be between 0 and 5) mseactions.pas(761,34) Warning: range check error while evaluating constants (-63489 must be between 0 and 65535) msegraphicstream.pas(136,18) Warning: function result variable of a managed type does not seem to be initialized msegraphicstream.pas(164,18) Warning: function result variable of a managed type does not seem to be initialized msegraphicstream.pas(180,18) Warning: function result variable of a managed type does not seem to be initialized msegraphicstream.pas(217,18) Warning: function result variable of a managed type does not seem to be initialized msedock.pas(4693,18) Warning: range check error while evaluating constants (-1 must be between 0 and 29) msesyntaxpainter.pas(1465,14) Warning: range check error while evaluating constants (-1 must be between 0 and 12) msebufdataset.pas(2795,28) Warning: range check error while evaluating constants (13 must be between 0 and 12) msebufdataset.pas(4070,16) Warning: range check error while evaluating constants (20 must be between 0 and 14) msebufdataset.pas(4150,15) Warning: range check error while evaluating constants (20 must be between 0 and 14) msebufdataset.pas(6315,24) Warning: range check error while evaluating constants (13 must be between 0 and 12) msebufdataset.pas(6357,24) Warning: range check error while evaluating constants (13 must be between 0 and 12) msebufdataset.pas(6425,24) Warning: range check error while evaluating constants (13 must be between 0 and 12) msebufdataset.pas(6493,24) Warning: range check error while evaluating constants (13 must be between 0 and 12) msebufdataset.pas(8779,15) Warning: range check error while evaluating constants (15 must be between 0 and 14) msebufdataset.pas(8843,13) Warning: range check error while evaluating constants (15 must be between 0 and 14) msebufdataset.pas(10349,27) Warning: range check error while evaluating constants (13 must be between 0 and 12) msedb.pas(2801,11) Warning: range check error while evaluating constants (-1 must be between 0 and 22) msedb.pas(7606,30) Warning: range check error while evaluating constants (16 must be between 0 and 14) msedb.pas(7958,37) Warning: range check error while evaluating constants (18 must be between 0 and 14) msedb.pas(8079,30) Warning: range check error while evaluating constants (15 must be between 0 and 14) mselookupbuffer.pas(1682,14) Warning: range check error while evaluating constants (15 must be between 0 and 14) procedurelistform.pas(153,26) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString" procedurelistform.pas(159,64) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(224,43) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(226,52) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(228,54) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(230,57) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(279,44) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString" procedurelistform.pas(290,57) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString" procedurelistform.pas(292,56) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString" procedurelistform.pas(532,36) Warning: Implicit string type conversion from "RawByteString" to "UnicodeString" procedurelistform.pas(542,63) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(678,51) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString" procedurelistform.pas(797,47) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString" msedbedit.pas(2725,18) Warning: range check error while evaluating constants (-1 must be between 0 and 83) msedbedit.pas(3943,33) Warning: range check error while evaluating constants (19 must be between 0 and 14) msedesignparser.pas(679,10) Warning: range check error while evaluating constants (-1 must be between 0 and 9) Linking mseide 666154 lines compiled, 23.4 sec 57 warning(s) issued 21 note(s) issued And about the Warnings generated by fpc 3.3.1 trunk, maybe first fix warnings of fpc 3.0.4 and fpc 3.2.0. and talk about it later. Fre;D -- Sent from: http://mseide-msegui-talk.13964.n8.nabble.com/ _______________________________________________ mseide-msegui-talk mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk

