diff --git a/components/codetools/h2pastool.pas b/components/codetools/h2pastool.pas index 4f6a20b754..ee1dbb784a 100644 --- a/components/codetools/h2pastool.pas +++ b/components/codetools/h2pastool.pas @@ -2171,9 +2171,16 @@ function TH2PasTool.CreateH2PNode(var PascalName: string; const CName: string; const PascalCode: string; ParentNode: TH2PNode; IsGlobal: boolean; InsertAsPreLast: boolean): TH2PNode; begin - if (PascalName<>'') and IsGlobal and (PascalDesc<>ctnNone) - and IsValidIdent(PascalName) then - PascalName:=CreateUniquePascalName(PascalName); + if (PascalName<>'') and (PascalDesc<>ctnNone) and IsValidIdent(PascalName) + then begin + if WordIsKeyWord.DoItCaseInsensitive(PChar(PascalName)) then begin + // C name is keyword => auto rename + PascalName:=PascalName+'_'; + end; + if IsGlobal then + PascalName:=CreateUniquePascalName(PascalName); + end; + Result:=TH2PNode.Create; Result.PascalName:=PascalName; Result.CName:=CName;