Hello,

The simple program below compiles and produces the expected output in
2.6.4. In 2.7.1 (3.1.1 now)  an EAccessViolation is caused.

The strlower function seems to be in strings.inc and written in assembler.
Unfortunately I can not decipher the assembly to research further.

---

program teststrlowersimple;

{$mode objfpc}
{$H+}

uses
  sysutils;

var
  s : string;
  p : pchar;

begin
  s := 'UPPPERCASESTRING';
  p := pchar(s);
  strlower(p); // EAccessViolation: Access violation
  writeln(s);
end.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to