diff --git a/rtl/inc/lineinfo.pp b/rtl/inc/lineinfo.pp index 2571ad9ace..51de4a13d2 100644 --- a/rtl/inc/lineinfo.pp +++ b/rtl/inc/lineinfo.pp @@ -29,7 +29,7 @@ type {$ENDIF} function GetLineInfo(addr:ptruint;var func,source:string;var line:longint) : boolean; -function StabBackTraceStr(addr:CodePointer):string; +function StabBackTraceStr(addr:CodePointer):shortstring; procedure CloseStabs; var @@ -277,7 +277,7 @@ begin seek(e.f,stabstrofs+dirstab.strpos); blockread(e.f,source[1],high(source)-1,res); dirlength:=strlen(@source[1]); - source[0]:=chr(dirlength); + SetLength(source,dirlength); end else dirlength:=0; @@ -285,13 +285,13 @@ begin begin seek(e.f,stabstrofs+filestab.strpos); blockread(e.f,source[dirlength+1],high(source)-(dirlength+1),res); - source[0]:=chr(strlen(@source[1])); + SetLength(source,strlen(@source[1])); end; if funcstab.ntype<>0 then begin seek(e.f,stabstrofs+funcstab.strpos); blockread(e.f,func[1],high(func)-1,res); - func[0]:=chr(strlen(@func[1])); + SetLength(func,strlen(@func[1])); i:=pos(':',func); if i>0 then Delete(func,i,255); @@ -304,7 +304,7 @@ begin end; -function StabBackTraceStr(addr:CodePointer):string; +function StabBackTraceStr(addr:CodePointer):shortstring; var func, source : string; diff --git a/rtl/inc/lnfodwrf.pp b/rtl/inc/lnfodwrf.pp index d096c4e6e6..6482e4409b 100644 --- a/rtl/inc/lnfodwrf.pp +++ b/rtl/inc/lnfodwrf.pp @@ -32,7 +32,7 @@ type {$ENDIF} function GetLineInfo(addr:codeptruint;var func,source:string;var line:longint) : boolean; -function DwarfBackTraceStr(addr: CodePointer): string; +function DwarfBackTraceStr(addr: CodePointer): shortstring; procedure CloseDwarf; var @@ -1415,7 +1415,7 @@ begin end; -function DwarfBackTraceStr(addr: CodePointer): string; +function DwarfBackTraceStr(addr: CodePointer): shortstring; var func, source : string; diff --git a/rtl/unix/dos.pp b/rtl/unix/dos.pp index e75d87ab56..dd9cfbf7f2 100644 --- a/rtl/unix/dos.pp +++ b/rtl/unix/dos.pp @@ -685,7 +685,7 @@ End; --- File --- ******************************************************************************} -Function FSearch(path : pathstr;dirlist : string) : pathstr; +Function FSearch(path : pathstr;dirlist : shortstring) : pathstr; Var info : BaseUnix.stat; Begin @@ -806,7 +806,7 @@ Begin End; -Function EnvStr (Index: longint): String; +Function EnvStr (Index: longint): ShortString; Var i : longint; p : PPAnsiChar; @@ -830,7 +830,7 @@ Begin end; -Function GetEnv(EnvVar: String): String; +Function GetEnv(EnvVar: ShortString): ShortString; var p : PAnsiChar; Begin diff --git a/rtl/unix/timezone.inc b/rtl/unix/timezone.inc index 0b69d678c8..d2831b07e0 100644 --- a/rtl/unix/timezone.inc +++ b/rtl/unix/timezone.inc @@ -252,7 +252,7 @@ begin TimeZoneDir:=TimeZoneDir+'/'; end; -function ReadTimezoneFile(fn:shortstring) : Boolean; +function ReadTimezoneFile(fn:string) : Boolean; function decode(const l:longint):longint; begin @@ -489,7 +489,7 @@ Const {$ifndef FPC_HAS_GETTIMEZONEFILE} -function GetTimezoneFile:shortstring; +function GetTimezoneFile:string; var f,len : longint; fn,s : shortstring;