mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-14 17:19:19 +02:00
Debugger: fix internal type for gdb request (eval vs ptype)
git-svn-id: trunk@43380 -
This commit is contained in:
parent
6be8179494
commit
00d03773a0
@ -340,7 +340,7 @@ type
|
|||||||
gptrEvalExpr2, gptrEvalExprDeRef2, gptrEvalExprCast2, // used by MaybeString
|
gptrEvalExpr2, gptrEvalExprDeRef2, gptrEvalExprCast2, // used by MaybeString
|
||||||
gptrPtypeCustomAutoCast, gptrPtypeCustomAutoCast2,
|
gptrPtypeCustomAutoCast, gptrPtypeCustomAutoCast2,
|
||||||
gptrInstanceClassName,
|
gptrInstanceClassName,
|
||||||
gptrPtypeCustomEval
|
gptrEvalCustomEval
|
||||||
);
|
);
|
||||||
TGDBTypeProcessRequests = set of TGDBTypeProcessRequest;
|
TGDBTypeProcessRequests = set of TGDBTypeProcessRequest;
|
||||||
|
|
||||||
@ -2074,7 +2074,7 @@ function TGDBType.RequireRequests(ARequired: TGDBTypeProcessRequests; ACustomDat
|
|||||||
gptrPtypeCustomAutoCast, gptrPtypeCustomAutoCast2:
|
gptrPtypeCustomAutoCast, gptrPtypeCustomAutoCast2:
|
||||||
Result := GdbCmdPType + ACustomData;
|
Result := GdbCmdPType + ACustomData;
|
||||||
gptrInstanceClassName: Result := GdbCmdEvaluate+Quote('(^^^char('+FExpression+')^+3)^');
|
gptrInstanceClassName: Result := GdbCmdEvaluate+Quote('(^^^char('+FExpression+')^+3)^');
|
||||||
gptrPtypeCustomEval: Result := GdbCmdEvaluate+Quote(ACustomData);
|
gptrEvalCustomEval: Result := GdbCmdEvaluate+Quote(ACustomData);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -2097,7 +2097,7 @@ begin
|
|||||||
for i := low(TGDBTypeProcessRequest) to high(TGDBTypeProcessRequest) do
|
for i := low(TGDBTypeProcessRequest) to high(TGDBTypeProcessRequest) do
|
||||||
if i in NeededReq then begin
|
if i in NeededReq then begin
|
||||||
AddTypeReq(FReqResults[i], GetReqText(i));
|
AddTypeReq(FReqResults[i], GetReqText(i));
|
||||||
if i in [gptrEvalExpr, gptrEvalExprDeRef, gptrEvalExprCast, gptrInstanceClassName]
|
if i in [gptrEvalExpr, gptrEvalExprDeRef, gptrEvalExprCast, gptrInstanceClassName, gptrEvalCustomEval]
|
||||||
then FReqResults[i].ReqType := gcrtEvalExpr
|
then FReqResults[i].ReqType := gcrtEvalExpr
|
||||||
else FReqResults[i].ReqType := gcrtPType;
|
else FReqResults[i].ReqType := gcrtPType;
|
||||||
end;
|
end;
|
||||||
@ -2763,10 +2763,10 @@ var
|
|||||||
exit;
|
exit;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if not RequireRequests([gptrPtypeCustomEval], '^^longint('+FExpression+')[-1]') then exit;
|
if not RequireRequests([gptrEvalCustomEval], '^^longint('+FExpression+')[-1]') then exit;
|
||||||
if not IsReqError(gptrPtypeCustomEval, False) then begin
|
if not IsReqError(gptrEvalCustomEval, False) then begin
|
||||||
FBoundLow := 0;
|
FBoundLow := 0;
|
||||||
FBoundHigh := StrToIntDef(GetParsedFromResult(FReqResults[gptrPtypeCustomEval].Result.GdbDescription, 'value'), -1);
|
FBoundHigh := StrToIntDef(GetParsedFromResult(FReqResults[gptrEvalCustomEval].Result.GdbDescription, 'value'), -1);
|
||||||
FLen := FBoundHigh + 1;
|
FLen := FBoundHigh + 1;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user