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

Reply via email to