[fpc-pascal] strlower causes EAccessViolation

Michael Van Ham michael.vanham at gmail.com
Mon Jan 5 21:33:23 CET 2015


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.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20150105/675bc255/attachment.html>


More information about the fpc-pascal mailing list