|
@@ -1801,7 +1801,7 @@ type
|
|
fExprEvaluator: TResExprEvaluator;
|
|
fExprEvaluator: TResExprEvaluator;
|
|
procedure OnExprEvalLog(Sender: TResExprEvaluator; const id: TMaxPrecInt;
|
|
procedure OnExprEvalLog(Sender: TResExprEvaluator; const id: TMaxPrecInt;
|
|
MsgType: TMessageType; MsgNumber: integer; const Fmt: String;
|
|
MsgType: TMessageType; MsgNumber: integer; const Fmt: String;
|
|
- Args: array of {$ifdef pas2js}jsvalue{$else}const{$endif}; PosEl: TPasElement); virtual;
|
|
|
|
|
|
+ Args: array of const; PosEl: TPasElement); virtual;
|
|
function OnExprEvalIdentifier(Sender: TResExprEvaluator;
|
|
function OnExprEvalIdentifier(Sender: TResExprEvaluator;
|
|
Expr: TPrimitiveExpr; Flags: TResEvalFlags): TResEvalValue; virtual;
|
|
Expr: TPrimitiveExpr; Flags: TResEvalFlags): TResEvalValue; virtual;
|
|
function OnExprEvalParams(Sender: TResExprEvaluator;
|
|
function OnExprEvalParams(Sender: TResExprEvaluator;
|
|
@@ -2174,10 +2174,10 @@ type
|
|
class function GetDbgSourcePosStr(El: TPasElement): string;
|
|
class function GetDbgSourcePosStr(El: TPasElement): string;
|
|
function GetElementSourcePosStr(El: TPasElement): string;
|
|
function GetElementSourcePosStr(El: TPasElement): string;
|
|
procedure SetLastMsg(const id: TMaxPrecInt; MsgType: TMessageType; MsgNumber: integer;
|
|
procedure SetLastMsg(const id: TMaxPrecInt; MsgType: TMessageType; MsgNumber: integer;
|
|
- Const Fmt : String; Args : Array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ Const Fmt : String; Args : Array of const;
|
|
PosEl: TPasElement);
|
|
PosEl: TPasElement);
|
|
procedure LogMsg(const id: TMaxPrecInt; MsgType: TMessageType; MsgNumber: integer;
|
|
procedure LogMsg(const id: TMaxPrecInt; MsgType: TMessageType; MsgNumber: integer;
|
|
- const Fmt: String; Args: Array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ const Fmt: String; Args: Array of const;
|
|
PosEl: TPasElement); overload;
|
|
PosEl: TPasElement); overload;
|
|
class function GetWarnIdentifierNumbers(Identifier: string;
|
|
class function GetWarnIdentifierNumbers(Identifier: string;
|
|
out MsgNumbers: TIntegerDynArray): boolean; virtual;
|
|
out MsgNumbers: TIntegerDynArray): boolean; virtual;
|
|
@@ -2188,7 +2188,7 @@ type
|
|
procedure GetIncompatibleProcParamsDesc(GotType, ExpType: TPasProcedureType;
|
|
procedure GetIncompatibleProcParamsDesc(GotType, ExpType: TPasProcedureType;
|
|
out GotDesc, ExpDesc: string);
|
|
out GotDesc, ExpDesc: string);
|
|
procedure RaiseMsg(const Id: TMaxPrecInt; MsgNumber: integer; const Fmt: String;
|
|
procedure RaiseMsg(const Id: TMaxPrecInt; MsgNumber: integer; const Fmt: String;
|
|
- Args: Array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ Args: Array of const;
|
|
ErrorPosEl: TPasElement); virtual;
|
|
ErrorPosEl: TPasElement); virtual;
|
|
procedure RaiseNotYetImplemented(id: TMaxPrecInt; El: TPasElement; Msg: string = ''); virtual;
|
|
procedure RaiseNotYetImplemented(id: TMaxPrecInt; El: TPasElement; Msg: string = ''); virtual;
|
|
procedure RaiseInternalError(id: TMaxPrecInt; const Msg: string = '');
|
|
procedure RaiseInternalError(id: TMaxPrecInt; const Msg: string = '');
|
|
@@ -2202,13 +2202,13 @@ type
|
|
procedure RaiseVarExpected(id: TMaxPrecInt; ErrorEl: TPasElement; IdentEl: TPasElement);
|
|
procedure RaiseVarExpected(id: TMaxPrecInt; ErrorEl: TPasElement; IdentEl: TPasElement);
|
|
procedure RaiseRangeCheck(id: TMaxPrecInt; ErrorEl: TPasElement);
|
|
procedure RaiseRangeCheck(id: TMaxPrecInt; ErrorEl: TPasElement);
|
|
procedure RaiseIncompatibleTypeDesc(id: TMaxPrecInt; MsgNumber: integer;
|
|
procedure RaiseIncompatibleTypeDesc(id: TMaxPrecInt; MsgNumber: integer;
|
|
- const Args: array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ const Args: array of const;
|
|
const GotDesc, ExpDesc: String; ErrorEl: TPasElement);
|
|
const GotDesc, ExpDesc: String; ErrorEl: TPasElement);
|
|
procedure RaiseIncompatibleType(id: TMaxPrecInt; MsgNumber: integer;
|
|
procedure RaiseIncompatibleType(id: TMaxPrecInt; MsgNumber: integer;
|
|
- const Args: array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ const Args: array of const;
|
|
GotType, ExpType: TPasType; ErrorEl: TPasElement);
|
|
GotType, ExpType: TPasType; ErrorEl: TPasElement);
|
|
procedure RaiseIncompatibleTypeRes(id: TMaxPrecInt; MsgNumber: integer;
|
|
procedure RaiseIncompatibleTypeRes(id: TMaxPrecInt; MsgNumber: integer;
|
|
- const Args: array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ const Args: array of const;
|
|
const GotType, ExpType: TPasResolverResult;
|
|
const GotType, ExpType: TPasResolverResult;
|
|
ErrorEl: TPasElement);
|
|
ErrorEl: TPasElement);
|
|
procedure RaiseHelpersCannotBeUsedAsType(id: TMaxPrecInt; ErrorEl: TPasElement);
|
|
procedure RaiseHelpersCannotBeUsedAsType(id: TMaxPrecInt; ErrorEl: TPasElement);
|
|
@@ -15459,7 +15459,7 @@ end;
|
|
|
|
|
|
procedure TPasResolver.OnExprEvalLog(Sender: TResExprEvaluator;
|
|
procedure TPasResolver.OnExprEvalLog(Sender: TResExprEvaluator;
|
|
const id: TMaxPrecInt; MsgType: TMessageType; MsgNumber: integer;
|
|
const id: TMaxPrecInt; MsgType: TMessageType; MsgNumber: integer;
|
|
- const Fmt: String; Args: array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ const Fmt: String; Args: array of const;
|
|
PosEl: TPasElement);
|
|
PosEl: TPasElement);
|
|
begin
|
|
begin
|
|
if MsgType<=mtError then
|
|
if MsgType<=mtError then
|
|
@@ -23070,7 +23070,7 @@ end;
|
|
|
|
|
|
procedure TPasResolver.SetLastMsg(const id: TMaxPrecInt; MsgType: TMessageType;
|
|
procedure TPasResolver.SetLastMsg(const id: TMaxPrecInt; MsgType: TMessageType;
|
|
MsgNumber: integer; const Fmt: String;
|
|
MsgNumber: integer; const Fmt: String;
|
|
- Args: array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ Args: array of const;
|
|
PosEl: TPasElement);
|
|
PosEl: TPasElement);
|
|
var
|
|
var
|
|
{$IFDEF VerbosePasResolver}
|
|
{$IFDEF VerbosePasResolver}
|
|
@@ -23112,7 +23112,7 @@ begin
|
|
end;
|
|
end;
|
|
|
|
|
|
procedure TPasResolver.RaiseMsg(const Id: TMaxPrecInt; MsgNumber: integer;
|
|
procedure TPasResolver.RaiseMsg(const Id: TMaxPrecInt; MsgNumber: integer;
|
|
- const Fmt: String; Args: array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ const Fmt: String; Args: array of const;
|
|
ErrorPosEl: TPasElement);
|
|
ErrorPosEl: TPasElement);
|
|
var
|
|
var
|
|
E: EPasResolve;
|
|
E: EPasResolve;
|
|
@@ -23224,25 +23224,22 @@ begin
|
|
end;
|
|
end;
|
|
|
|
|
|
procedure TPasResolver.RaiseIncompatibleTypeDesc(id: TMaxPrecInt; MsgNumber: integer;
|
|
procedure TPasResolver.RaiseIncompatibleTypeDesc(id: TMaxPrecInt; MsgNumber: integer;
|
|
- const Args: array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ const Args: array of const;
|
|
const GotDesc, ExpDesc: String; ErrorEl: TPasElement);
|
|
const GotDesc, ExpDesc: String; ErrorEl: TPasElement);
|
|
|
|
|
|
function GetString(ArgNo: integer): string;
|
|
function GetString(ArgNo: integer): string;
|
|
begin
|
|
begin
|
|
if ArgNo>High(Args) then
|
|
if ArgNo>High(Args) then
|
|
exit('invalid param '+IntToStr(ArgNo));
|
|
exit('invalid param '+IntToStr(ArgNo));
|
|
- {$ifdef pas2js}
|
|
|
|
- if isString(Args[ArgNo]) then
|
|
|
|
- Result:=String(Args[ArgNo])
|
|
|
|
- else
|
|
|
|
- Result:='invalid param '+jsTypeOf(Args[ArgNo]);
|
|
|
|
- {$else}
|
|
|
|
case Args[ArgNo].VType of
|
|
case Args[ArgNo].VType of
|
|
|
|
+{$IFDEF PAS2JS}
|
|
|
|
+ vtUnicodeString: Result:=Args[ArgNo].VUnicodeString;
|
|
|
|
+{$ELSE}
|
|
vtAnsiString: Result:=AnsiString(Args[ArgNo].VAnsiString);
|
|
vtAnsiString: Result:=AnsiString(Args[ArgNo].VAnsiString);
|
|
|
|
+{$ENDIF}
|
|
else
|
|
else
|
|
Result:='invalid param '+IntToStr(Ord(Args[ArgNo].VType));
|
|
Result:='invalid param '+IntToStr(Ord(Args[ArgNo].VType));
|
|
end;
|
|
end;
|
|
- {$endif}
|
|
|
|
end;
|
|
end;
|
|
|
|
|
|
begin
|
|
begin
|
|
@@ -23270,7 +23267,7 @@ begin
|
|
end;
|
|
end;
|
|
|
|
|
|
procedure TPasResolver.RaiseIncompatibleType(id: TMaxPrecInt; MsgNumber: integer;
|
|
procedure TPasResolver.RaiseIncompatibleType(id: TMaxPrecInt; MsgNumber: integer;
|
|
- const Args: array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ const Args: array of const;
|
|
GotType, ExpType: TPasType; ErrorEl: TPasElement);
|
|
GotType, ExpType: TPasType; ErrorEl: TPasElement);
|
|
var
|
|
var
|
|
GotDesc, ExpDesc: String;
|
|
GotDesc, ExpDesc: String;
|
|
@@ -23280,7 +23277,7 @@ begin
|
|
end;
|
|
end;
|
|
|
|
|
|
procedure TPasResolver.RaiseIncompatibleTypeRes(id: TMaxPrecInt; MsgNumber: integer;
|
|
procedure TPasResolver.RaiseIncompatibleTypeRes(id: TMaxPrecInt; MsgNumber: integer;
|
|
- const Args: array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ const Args: array of const;
|
|
const GotType, ExpType: TPasResolverResult;
|
|
const GotType, ExpType: TPasResolverResult;
|
|
ErrorEl: TPasElement);
|
|
ErrorEl: TPasElement);
|
|
var
|
|
var
|
|
@@ -23315,7 +23312,7 @@ end;
|
|
|
|
|
|
procedure TPasResolver.LogMsg(const id: TMaxPrecInt; MsgType: TMessageType;
|
|
procedure TPasResolver.LogMsg(const id: TMaxPrecInt; MsgType: TMessageType;
|
|
MsgNumber: integer; const Fmt: String;
|
|
MsgNumber: integer; const Fmt: String;
|
|
- Args: array of {$ifdef pas2js}jsvalue{$else}const{$endif};
|
|
|
|
|
|
+ Args: array of const;
|
|
PosEl: TPasElement);
|
|
PosEl: TPasElement);
|
|
var
|
|
var
|
|
Scanner: TPascalScanner;
|
|
Scanner: TPascalScanner;
|