mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-15 23:49:22 +02:00
* fixed more line numering output
* proper error message for generic methods not found * fix small bug in replaying git-svn-id: trunk@5121 -
This commit is contained in:
parent
59e2c82080
commit
a3a650ee73
@ -1693,18 +1693,19 @@ implementation
|
|||||||
begin
|
begin
|
||||||
if hp.deftype=procdef then
|
if hp.deftype=procdef then
|
||||||
begin
|
begin
|
||||||
if not(
|
if assigned(tprocdef(hp).genericdef) and
|
||||||
assigned(tprocdef(hp).genericdef) and
|
(tprocdef(hp).genericdef.deftype=procdef) and
|
||||||
(tprocdef(hp).genericdef.deftype=procdef) and
|
assigned(tprocdef(tprocdef(hp).genericdef).generictokenbuf) then
|
||||||
assigned(tprocdef(tprocdef(hp).genericdef).generictokenbuf)
|
begin
|
||||||
) then
|
oldcurrent_filepos:=current_filepos;
|
||||||
internalerror(200512111);
|
current_filepos:=tprocdef(tprocdef(hp).genericdef).fileinfo;
|
||||||
oldcurrent_filepos:=current_filepos;
|
current_tokenpos:=current_filepos;
|
||||||
current_filepos:=tprocdef(tprocdef(hp).genericdef).fileinfo;
|
current_scanner.startreplaytokens(tprocdef(tprocdef(hp).genericdef).generictokenbuf);
|
||||||
current_tokenpos:=current_filepos;
|
read_proc_body(nil,tprocdef(hp));
|
||||||
current_scanner.startreplaytokens(tprocdef(tprocdef(hp).genericdef).generictokenbuf);
|
current_filepos:=oldcurrent_filepos;
|
||||||
read_proc_body(nil,tprocdef(hp));
|
end
|
||||||
current_filepos:=oldcurrent_filepos;
|
else
|
||||||
|
MessagePos1(tprocdef(tprocdef(hp).genericdef).fileinfo,sym_e_forward_not_resolved,tprocdef(tprocdef(hp).genericdef).fullprocname(false));
|
||||||
end;
|
end;
|
||||||
hp:=tdef(hp.indexnext);
|
hp:=tdef(hp.indexnext);
|
||||||
end;
|
end;
|
||||||
|
@ -1946,7 +1946,9 @@ In case not, the value returned can be arbitrary.
|
|||||||
{ load token from the buffer }
|
{ load token from the buffer }
|
||||||
replaytokenbuf.read(token,1);
|
replaytokenbuf.read(token,1);
|
||||||
if token=_ID then
|
if token=_ID then
|
||||||
replaytokenbuf.read(idtoken,1);
|
replaytokenbuf.read(idtoken,1)
|
||||||
|
else
|
||||||
|
idtoken:=_NOID;
|
||||||
case token of
|
case token of
|
||||||
_CWCHAR,
|
_CWCHAR,
|
||||||
_CWSTRING :
|
_CWSTRING :
|
||||||
@ -1978,11 +1980,20 @@ In case not, the value returned can be arbitrary.
|
|||||||
ST_LOADSETTINGS:
|
ST_LOADSETTINGS:
|
||||||
replaytokenbuf.read(current_settings,sizeof(current_settings));
|
replaytokenbuf.read(current_settings,sizeof(current_settings));
|
||||||
ST_LINE:
|
ST_LINE:
|
||||||
replaytokenbuf.read(current_tokenpos.line,sizeof(current_tokenpos.line));
|
begin
|
||||||
|
replaytokenbuf.read(current_tokenpos.line,sizeof(current_tokenpos.line));
|
||||||
|
current_filepos:=current_tokenpos;
|
||||||
|
end;
|
||||||
ST_COLUMN:
|
ST_COLUMN:
|
||||||
replaytokenbuf.read(current_tokenpos.column,sizeof(current_tokenpos.column));
|
begin
|
||||||
|
replaytokenbuf.read(current_tokenpos.column,sizeof(current_tokenpos.column));
|
||||||
|
current_filepos:=current_tokenpos;
|
||||||
|
end;
|
||||||
ST_FILEINDEX:
|
ST_FILEINDEX:
|
||||||
replaytokenbuf.read(current_tokenpos.fileindex,sizeof(current_tokenpos.fileindex));
|
begin
|
||||||
|
replaytokenbuf.read(current_tokenpos.fileindex,sizeof(current_tokenpos.fileindex));
|
||||||
|
current_filepos:=current_tokenpos;
|
||||||
|
end;
|
||||||
else
|
else
|
||||||
internalerror(2006103010);
|
internalerror(2006103010);
|
||||||
end;
|
end;
|
||||||
|
Loading…
Reference in New Issue
Block a user