summaryrefslogtreecommitdiff
path: root/avx512-0037785/compiler/utils/msg2inc.pp
diff options
context:
space:
mode:
Diffstat (limited to 'avx512-0037785/compiler/utils/msg2inc.pp')
-rw-r--r--avx512-0037785/compiler/utils/msg2inc.pp63
1 files changed, 41 insertions, 22 deletions
diff --git a/avx512-0037785/compiler/utils/msg2inc.pp b/avx512-0037785/compiler/utils/msg2inc.pp
index 9e8e45787f..38a7c7f700 100644
--- a/avx512-0037785/compiler/utils/msg2inc.pp
+++ b/avx512-0037785/compiler/utils/msg2inc.pp
@@ -13,6 +13,7 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
**********************************************************************}
+{$H+}
program msg2inc;
{$ifdef unix}
@@ -622,21 +623,28 @@ Var
hs : string;
begin
hs:='';
- for i:=1 to length(s) do
- case S[i] of
- '$' :
- if (s[i+1] in ['0'..'9']) then
- hs:=hs+'arg'
- else
- hs:=hs+'\$';
- '&','{','}','#','_','%': // Escape these characters
- hs := hs + '\' + S[i];
- '~','^':
- hs := hs + '\'+S[i]+' ';
- '\':
- hs:=hs+'$\backslash$'
- else
- hs := hs + S[i];
+ i:=1;
+ while i<=length(s) do
+ begin
+ case S[i] of
+ '$' :
+ if (s[i+1] in ['0'..'9']) then
+ begin
+ hs:=hs+'\textlangle arg. '+s[i+1]+'\textrangle{}';
+ inc(i);
+ end
+ else
+ hs:=hs+'\$';
+ '&','{','}','#','_','%': // Escape these characters
+ hs := hs + '\' + S[i];
+ '~','^':
+ hs := hs + '\'+S[i]+' ';
+ '\':
+ hs:=hs+'$\backslash$'
+ else
+ hs := hs + S[i];
+ end;
+ inc(i);
end;
EscapeString:=hs;
end;
@@ -646,6 +654,7 @@ var
t,f : text;
line,
i,k : longint;
+ number,
s,s1 : string;
texoutput : boolean;
begin
@@ -695,25 +704,35 @@ begin
if i>0 then
begin
inc(i);
+ number:='';
while s[i] in ['0'..'9'] do
- inc(i);
+ begin
+ number:=number+s[i];
+ inc(i);
+ end;
+ { strip leading zeros }
+ while number[1]='0' do
+ Delete(number,1,1);
inc(i);
s1:='';
k:=0;
while (k<5) and (s[i+k]<>'_') do
begin
case s[i+k] of
- 'W' : s1:='Warning: ';
- 'E' : s1:='Error: ';
- 'F' : s1:='Fatal: ';
- 'N' : s1:='Note: ';
- 'I' : s1:='Info: ';
- 'H' : s1:='Hint: ';
+ 'W' : s1:='Warning '+number+': ';
+ 'E' : s1:='Error '+number+': ';
+ 'F' : s1:='Fatal error '+number+': ';
+ 'N' : s1:='Note '+number+': ';
+ 'I' : s1:='Info '+number+': ';
+ 'H' : s1:='Hint '+number+': ';
end;
inc(k);
end;
if s[i+k]='_' then
inc(i,k+1);
+ if number<>'' then
+ writeln(t,'\index[msgnr]{',number,'}');
+ writeln(t,'\index[msgtxt]{',escapestring(Copy(s,i,255)),'}');
writeln(t,'\item ['+s1+escapestring(Copy(s,i,255))+'] \hfill \\');
end
else