diff --git a/bugs/bug0175.pp b/bugs/bug0175.pp index 0e9a07fc7b..a6b7e38c0f 100644 --- a/bugs/bug0175.pp +++ b/bugs/bug0175.pp @@ -1,3 +1,4 @@ +{$asmmode att} var w : word; begin diff --git a/bugs/bug0207.pp b/bugs/bug0207.pp index f528514574..464f292f9a 100644 --- a/bugs/bug0207.pp +++ b/bugs/bug0207.pp @@ -1,5 +1,19 @@ {$mode delphi} +type + tmyobject = class(tobject) + procedure free; + end; + + procedure tmyobject.free; + begin + if self<>nil then + destroy; + end; + + var t : tmyobject; begin - while true do tobject.create.free; + t:=tmyobject.create; + t.destroy; + while true do tmyobject.create.free; end. diff --git a/bugs/bug0210.pp b/bugs/bug0210.pp new file mode 100644 index 0000000000..b29bfd369c --- /dev/null +++ b/bugs/bug0210.pp @@ -0,0 +1,10 @@ +{ boolean args are accepted for fillchar in BP } + +program test; + + var l : array[1..10] of boolean; + +begin + fillchar(l,sizeof(l),true); +end. + diff --git a/bugs/bug0211.pp b/bugs/bug0211.pp new file mode 100644 index 0000000000..475f761ebd --- /dev/null +++ b/bugs/bug0211.pp @@ -0,0 +1,24 @@ +var + a,b : boolean; + c : byte; + i : longint; + +procedure Error; +begin + Writeln('Error in bug0211'); + Halt(1); +end; + +begin + c:=5; + a:=boolean(c); + if a and not a then + Begin + Writeln('FPC is crazy !!'); + Error; + End; + i:=256; + a:=boolean(i); + Writeln('boolean(256) =',a); +end. + diff --git a/bugs/readme.txt b/bugs/readme.txt index fa556a8275..7ecc7126bf 100644 --- a/bugs/readme.txt +++ b/bugs/readme.txt @@ -244,6 +244,7 @@ Fixed bugs: bug0209.pp problem with boolean expressions of different store sizes (problem created while solving bug205 ! PM) OK 0.99.11 (PM) bug0207.pp a class destructor doesn't release the memory OK 0.99.11 (FK) + bug0210.pp fillchar should accept boolean value also !! OK 0.99.11 (PM) Unproducable bugs: ------------------ @@ -282,4 +283,4 @@ bug0200.pp array of char overloading problem with strings bug0201.pp problem with record var-parameters and assembler bug0202.pp flag results not supported with case bug0206.pp sets with variable ranges doesn't work - +bug0211.pp a and not a is true !!! (if a:=boolean(5))