* beter line info for conditionals

This commit is contained in:
peter 1998-10-21 20:16:04 +00:00
parent 99b31c91bc
commit 8e363906e2
2 changed files with 19 additions and 4 deletions

View File

@ -276,9 +276,12 @@ const
mac : pmacrosym;
found : boolean;
state : char;
oldaktfilepos : tfileposinfo;
begin
oldaktfilepos:=aktfilepos;
while true do
begin
current_scanner^.gettokenpos;
case t of
_DIR_ENDIF : begin
current_scanner^.poppreprocstack;
@ -324,14 +327,17 @@ const
break
else
begin
current_scanner^.gettokenpos;
Message(scan_c_skipping_until);
repeat
current_scanner^.skipuntildirective;
t:=Get_Directive(current_scanner^.readid);
until is_conditional(t);
current_scanner^.gettokenpos;
Message1(scan_d_handling_switch,'$'+directive[t]);
end;
end;
oldaktfilepos:=aktfilepos;
end;
@ -944,7 +950,10 @@ const
{
$Log$
Revision 1.39 1998-10-13 16:50:21 pierre
Revision 1.40 1998-10-21 20:16:04 peter
* beter line info for conditionals
Revision 1.39 1998/10/13 16:50:21 pierre
* undid some changes of Peter that made the compiler wrong
for m68k (I had to reinsert some ifdefs)
* removed several memory leaks under m68k

View File

@ -554,10 +554,11 @@ implementation
procedure tscannerfile.poppreprocstack;
var
hp : ppreprocstack;
hp : ppreprocstack;
begin
if assigned(preprocstack) then
begin
Message1(scan_c_endif_found,preprocstack^.name);
hp:=preprocstack^.next;
dispose(preprocstack,done);
preprocstack:=hp;
@ -921,8 +922,10 @@ implementation
m : longint;
mac : pmacrosym;
asciinr : string[3];
{$ifdef new__is_keyword}
encoded : longint;
p:^byte;
p : ^byte;
{$endif}
label
exit_label;
begin
@ -1515,7 +1518,10 @@ begin
end.
{
$Log$
Revision 1.63 1998-10-16 14:20:57 daniel
Revision 1.64 1998-10-21 20:16:05 peter
* beter line info for conditionals
Revision 1.63 1998/10/16 14:20:57 daniel
* Faster keyword scanning.
* Import library and smartlink library in one file.