|
@@ -871,6 +871,7 @@ type
|
|
|
mask : tdefstate;
|
|
|
str : string[30];
|
|
|
end;
|
|
|
+ ptoken=^ttoken;
|
|
|
const
|
|
|
defopt : array[1..ord(high(tdefoption))] of tdefopt=(
|
|
|
(mask:df_unique; str:'Unique Type'),
|
|
@@ -893,6 +894,7 @@ var
|
|
|
first : boolean;
|
|
|
tokenbufsize : longint;
|
|
|
tokenbuf : pbyte;
|
|
|
+ token : ttoken;
|
|
|
len : sizeint;
|
|
|
wstring : widestring;
|
|
|
astring : ansistring;
|
|
@@ -945,13 +947,14 @@ begin
|
|
|
write(space,' Tokens: ');
|
|
|
while i<tokenbufsize do
|
|
|
begin
|
|
|
- if ttoken(tokenbuf[i])<>_GENERICSPECIALTOKEN then
|
|
|
- write(arraytokeninfo[ttoken(tokenbuf[i])].str);
|
|
|
- case ttoken(tokenbuf[i]) of
|
|
|
+ token:=ptoken(@tokenbuf[i])^;
|
|
|
+ if token<>_GENERICSPECIALTOKEN then
|
|
|
+ write(arraytokeninfo[token].str);
|
|
|
+ inc(i,SizeOf(token));
|
|
|
+ case token of
|
|
|
_CWCHAR,
|
|
|
_CWSTRING :
|
|
|
begin
|
|
|
- inc(i);
|
|
|
len:=psizeint(@tokenbuf[i])^;
|
|
|
inc(i,sizeof(sizeint));
|
|
|
setlength(wstring,len);
|
|
@@ -961,7 +964,6 @@ begin
|
|
|
end;
|
|
|
_CSTRING:
|
|
|
begin
|
|
|
- inc(i);
|
|
|
len:=psizeint(@tokenbuf[i])^;
|
|
|
inc(i,sizeof(sizeint));
|
|
|
setlength(astring,len);
|
|
@@ -973,14 +975,12 @@ begin
|
|
|
_INTCONST,
|
|
|
_REALNUMBER :
|
|
|
begin
|
|
|
- inc(i);
|
|
|
write(' ',pshortstring(@tokenbuf[i])^);
|
|
|
inc(i,tokenbuf[i]+1);
|
|
|
end;
|
|
|
_ID :
|
|
|
begin
|
|
|
- inc(i);
|
|
|
- inc(i);
|
|
|
+ inc(i,SizeOf(ttoken)); // idtoken
|
|
|
write(' ',pshortstring(@tokenbuf[i])^);
|
|
|
inc(i,tokenbuf[i]+1);
|
|
|
{
|
|
@@ -991,7 +991,6 @@ begin
|
|
|
end;
|
|
|
_GENERICSPECIALTOKEN:
|
|
|
begin
|
|
|
- inc(i);
|
|
|
case tspecialgenerictoken(tokenbuf[i]) of
|
|
|
ST_LOADSETTINGS:
|
|
|
begin
|
|
@@ -1031,8 +1030,6 @@ begin
|
|
|
continue;
|
|
|
}
|
|
|
end;
|
|
|
- else
|
|
|
- inc(i);
|
|
|
end;
|
|
|
|
|
|
if i<tokenbufsize then
|