Re: [fpc-pascal] What is -CO ?
On 09/06/2023 12:03, Mattias Gaertner via fpc-pascal wrote: Hi, What is -CO? In the docs I can only find this sentence: "Check for possible overflow of integer operations" Done some testing. -CO produces the below warning. program Project1; var a,b: Integer; var c: integer; begin a := Random(); b := Random(); c := a +b; // project1.lpr(7,3) Warning: Type size mismatch, possible loss of data / range check error writeln(c); end. However it overdoes it. make it var a,b: shortInt; Then the ":=random" will warn => ok. But the addition still warns, yet it can't ever fail. (even if the compiler internally uses int64) ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] What is -CO ?
I'm also curious :) I just tested, and the -Co (lowercase "o") enables overflow checking by default (like "{$Q+}" in code), https://github.com/michaliskambi/modern-pascal-introduction/wiki/What-are-range-and-overflow-checks-(and-errors)-in-Pascal . But -CO (uppercase "O") seems unrelated to it. This example: """ {$mode objfpc} uses SysUtils; var A: Int64; begin A := High(Int64) - 100; A := A + 200; Writeln('Result is ', A); end. """ ... behaves the same, regardless if it's compiled with "-CO" or not. (Only "-Co" is relevant, controls do we make overflow check, as expected.) Regards, Michalis pt., 9 cze 2023 o 12:03 Mattias Gaertner via fpc-pascal napisał(a): > > Hi, > > What is -CO? > > In the docs I can only find this sentence: > "Check for possible overflow of integer operations" > > > Mattias > ___ > fpc-pascal maillist - fpc-pascal@lists.freepascal.org > https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
[fpc-pascal] What is -CO ?
Hi, What is -CO? In the docs I can only find this sentence: "Check for possible overflow of integer operations" Mattias ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal