From d3f729367b2e08d11de213e0c1ebd9c721cda744 Mon Sep 17 00:00:00 2001 From: mattias Date: Wed, 19 Mar 2008 12:38:51 +0000 Subject: [PATCH] codetools: h2p: parsing ifdef, undef, ifndef git-svn-id: trunk@14582 - --- components/codetools/h2pastool.pas | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/components/codetools/h2pastool.pas b/components/codetools/h2pastool.pas index 527239397f..c235acc093 100644 --- a/components/codetools/h2pastool.pas +++ b/components/codetools/h2pastool.pas @@ -533,6 +533,7 @@ var Directive: String; PascalCode: String; H2PNode: TH2PNode; + CurName: String; begin Directive:=CTool.ExtractDirectiveAction(CNode); if Directive='include' then begin @@ -545,12 +546,27 @@ begin // #define NONFMAC some text here end else if Directive='undef' then begin // #undef NAME + CurName:=CTool.ExtractDirectiveFirstAtom(CNode); + H2PNode:=CreateH2PNode('#undef','#undef',CNode,ctnNone, + CurName,ParentNode,false); + DebugLn(['TH2PasTool.ConvertDirective added $undef: ',H2PNode.DescAsString]); + exit; end else if Directive='if' then begin // #if EXPRESSION end else if Directive='ifdef' then begin // #ifdef NAME + CurName:=CTool.ExtractDirectiveFirstAtom(CNode); + H2PNode:=CreateH2PNode('#ifdef','#ifdef',CNode,ctnNone, + CurName,ParentNode,false); + DebugLn(['TH2PasTool.ConvertDirective added $ifdef: ',H2PNode.DescAsString]); + exit; end else if Directive='ifndef' then begin // #ifndef NAME + CurName:=CTool.ExtractDirectiveFirstAtom(CNode); + H2PNode:=CreateH2PNode('#ifndef','#ifndef',CNode,ctnNone, + CurName,ParentNode,false); + DebugLn(['TH2PasTool.ConvertDirective added $ifndef: ',H2PNode.DescAsString]); + exit; end else if Directive='elif' then begin // #elif EXPRESSION end else if Directive='else' then begin