From ef53a0ca6e5011771127535cfa42c916b9a56fb5 Mon Sep 17 00:00:00 2001 From: Sergey Larin Date: Fri, 30 Jul 2021 16:34:17 +0300 Subject: [PATCH] Internproc processing added to CodeTools when modeswitch PrefixedAttributes. Implemented by analogy with `alias:'name1'` processing. --- components/codetools/keywordfunclists.pas | 1 + components/codetools/pascalparsertool.pas | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/components/codetools/keywordfunclists.pas b/components/codetools/keywordfunclists.pas index 4e87597b62..255d68f0a6 100644 --- a/components/codetools/keywordfunclists.pas +++ b/components/codetools/keywordfunclists.pas @@ -928,6 +928,7 @@ begin Add('FAR' ,{$ifdef FPC}@{$endif}AllwaysTrue); Add('FORWARD' ,{$ifdef FPC}@{$endif}AllwaysTrue); Add('INLINE' ,{$ifdef FPC}@{$endif}AllwaysTrue); + Add('INTERNPROC' ,{$ifdef FPC}@{$endif}AllwaysTrue); Add('INTERRUPT' ,{$ifdef FPC}@{$endif}AllwaysTrue); Add('IOCHECK' ,{$ifdef FPC}@{$endif}AllwaysTrue); Add('LIBRARY' ,{$ifdef FPC}@{$endif}AllwaysTrue); diff --git a/components/codetools/pascalparsertool.pas b/components/codetools/pascalparsertool.pas index 25bf7d0fb9..f0bb61550c 100644 --- a/components/codetools/pascalparsertool.pas +++ b/components/codetools/pascalparsertool.pas @@ -1908,6 +1908,11 @@ begin SaveRaiseCharExpectedButAtomFound(20170421195502,':'); ReadNextAtom; ReadConstant(true,false,[]); + end else if UpAtomIs('INTERNPROC') then begin + if not ReadNextAtomIsChar(':') then + SaveRaiseCharExpectedButAtomFound(20210616075400,':'); + ReadNextAtom; + ReadConstant(true,false,[]); end else if UpAtomIs('INTERRUPT') then begin ReadNextAtom; end else if UpAtomIs('SYSCALL') then begin