mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-11 09:26:15 +02:00
* pass not only exception address but also frame to raise:
if an address is passed the compiler cannot know a good value for the frame so it passed nil and no stack trace is printed, resolves #12528 git-svn-id: trunk@22932 -
This commit is contained in:
parent
1bc47815be
commit
39aef35bdc
@ -1403,7 +1403,7 @@ end;
|
|||||||
|
|
||||||
class procedure TFPHashList.Error(const Msg: string; Data: PtrInt);
|
class procedure TFPHashList.Error(const Msg: string; Data: PtrInt);
|
||||||
begin
|
begin
|
||||||
Raise EListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame);
|
Raise EListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TFPHashList.Expand: TFPHashList;
|
function TFPHashList.Expand: TFPHashList;
|
||||||
|
@ -1342,13 +1342,13 @@ end;
|
|||||||
|
|
||||||
procedure EvaluationError(const Msg: String);
|
procedure EvaluationError(const Msg: String);
|
||||||
begin
|
begin
|
||||||
raise EXPathEvaluationError.Create(Msg) at get_caller_addr(get_frame);
|
raise EXPathEvaluationError.Create(Msg) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure EvaluationError(const Msg: String; const Args: array of const);
|
procedure EvaluationError(const Msg: String; const Args: array of const);
|
||||||
begin
|
begin
|
||||||
raise EXPathEvaluationError.CreateFmt(Msg, Args)
|
raise EXPathEvaluationError.CreateFmt(Msg, Args)
|
||||||
at get_caller_addr(get_frame);
|
at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -1370,7 +1370,7 @@ end;
|
|||||||
|
|
||||||
procedure TXPathVariable.Error(const Msg: String; const Args: array of const);
|
procedure TXPathVariable.Error(const Msg: String; const Args: array of const);
|
||||||
begin
|
begin
|
||||||
raise Exception.CreateFmt(Msg, Args) at get_caller_addr(get_frame);
|
raise Exception.CreateFmt(Msg, Args) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -1788,7 +1788,7 @@ end;
|
|||||||
|
|
||||||
procedure TXPathScanner.Error(const Msg: String);
|
procedure TXPathScanner.Error(const Msg: String);
|
||||||
begin
|
begin
|
||||||
raise Exception.Create(Msg) at get_caller_addr(get_frame);
|
raise Exception.Create(Msg) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TXPathScanner.ParsePredicates(var Dest: TXPathNodeArray);
|
procedure TXPathScanner.ParsePredicates(var Dest: TXPathNodeArray);
|
||||||
|
@ -15,15 +15,13 @@
|
|||||||
{****************************************************************************}
|
{****************************************************************************}
|
||||||
|
|
||||||
Procedure BitsError (const Msg : string);
|
Procedure BitsError (const Msg : string);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Raise EBitsError.Create(Msg) at get_caller_addr(get_frame);
|
Raise EBitsError.Create(Msg) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure BitsErrorFmt (const Msg : string; const Args : array of const);
|
Procedure BitsErrorFmt (const Msg : string; const Args : array of const);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Raise EBitsError.CreateFmt(Msg,args) at get_caller_addr(get_frame);
|
Raise EBitsError.CreateFmt(Msg,args) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{Min function for Longint}
|
{Min function for Longint}
|
||||||
|
@ -154,7 +154,7 @@ end;
|
|||||||
|
|
||||||
class procedure TFPList.Error(const Msg: string; Data: PtrInt);
|
class procedure TFPList.Error(const Msg: string; Data: PtrInt);
|
||||||
begin
|
begin
|
||||||
Raise EListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame);
|
Raise EListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFPList.Exchange(Index1, Index2: Integer);
|
procedure TFPList.Exchange(Index1, Index2: Integer);
|
||||||
@ -743,7 +743,7 @@ end;
|
|||||||
|
|
||||||
class procedure TList.Error(const Msg: string; Data: PtrInt);
|
class procedure TList.Error(const Msg: string; Data: PtrInt);
|
||||||
begin
|
begin
|
||||||
Raise EListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame);
|
Raise EListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TList.Exchange(Index1, Index2: Integer);
|
procedure TList.Exchange(Index1, Index2: Integer);
|
||||||
|
@ -16,12 +16,12 @@
|
|||||||
|
|
||||||
procedure TStream.ReadNotImplemented;
|
procedure TStream.ReadNotImplemented;
|
||||||
begin
|
begin
|
||||||
raise EStreamError.CreateFmt(SStreamNoReading, [ClassName]) at get_caller_addr(get_frame);
|
raise EStreamError.CreateFmt(SStreamNoReading, [ClassName]) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TStream.WriteNotImplemented;
|
procedure TStream.WriteNotImplemented;
|
||||||
begin
|
begin
|
||||||
raise EStreamError.CreateFmt(SStreamNoWriting, [ClassName]) at get_caller_addr(get_frame);
|
raise EStreamError.CreateFmt(SStreamNoWriting, [ClassName]) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TStream.Read(var Buffer; Count: Longint): Longint;
|
function TStream.Read(var Buffer; Count: Longint): Longint;
|
||||||
@ -154,7 +154,7 @@ end;
|
|||||||
procedure TStream.InvalidSeek;
|
procedure TStream.InvalidSeek;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
raise EStreamError.CreateFmt(SStreamInvalidSeek, [ClassName]) at get_caller_addr(get_frame);
|
raise EStreamError.CreateFmt(SStreamInvalidSeek, [ClassName]) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TStream.FakeSeekForward(Offset: Int64; const Origin: TSeekOrigin; const Pos: Int64);
|
procedure TStream.FakeSeekForward(Offset: Int64; const Origin: TSeekOrigin; const Pos: Int64);
|
||||||
|
@ -434,13 +434,13 @@ end;
|
|||||||
|
|
||||||
Procedure TStrings.Error(const Msg: string; Data: Integer);
|
Procedure TStrings.Error(const Msg: string; Data: Integer);
|
||||||
begin
|
begin
|
||||||
Raise EStringListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame);
|
Raise EStringListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
Procedure TStrings.Error(const Msg: pstring; Data: Integer);
|
Procedure TStrings.Error(const Msg: pstring; Data: Integer);
|
||||||
begin
|
begin
|
||||||
Raise EStringListError.CreateFmt(Msg^,[Data]) at get_caller_addr(get_frame);
|
Raise EStringListError.CreateFmt(Msg^,[Data]) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
@ -526,7 +526,7 @@ end;
|
|||||||
|
|
||||||
class procedure TFPSList.Error(const Msg: string; Data: PtrInt);
|
class procedure TFPSList.Error(const Msg: string; Data: PtrInt);
|
||||||
begin
|
begin
|
||||||
raise EListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame);
|
raise EListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame), get_caller_frame(get_frame);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFPSList.Exchange(Index1, Index2: Integer);
|
procedure TFPSList.Exchange(Index1, Index2: Integer);
|
||||||
|
Loading…
Reference in New Issue
Block a user