Diff of /cmajor++/Cm/Cm.Core/Statement.hpp [r570] .. [r571]  Maximize  Restore

Switch to side-by-side view

--- a/cmajor++/Cm/Cm.Core/Statement.hpp
+++ b/cmajor++/Cm/Cm.Core/Statement.hpp
@@ -87,15 +87,15 @@
     void PatchPrevSet();
     void SetGeneratedStatement() { generatedStatement = true; }
     bool IsGeneratedStatement() const { return generatedStatement; }
-    bool IsFirstHandlerStatement() const { return firstHandlerStatement; }
-    void SetFirstHandlerStatement() { firstHandlerStatement = true; }
+    void SetGenNoDebugInfo() { genNoDebugInfo = true; }
+    bool GenNoDebugInfo() const { return genNoDebugInfo; }
 private:
     std::string label;
     Statement* parent;
     CfgNodePtr cfgNode;
     std::set<CfgNodePtr> prevSet;
     bool generatedStatement;
-    bool firstHandlerStatement;
+    bool genNoDebugInfo;
 };
 
 class SimpleStatement: public Statement
@@ -226,6 +226,8 @@
     void SetHasContinueChild() { hasContinueChild = true; }
     bool IsTryBlock() const { return tryBlock; }
     void SetAsTryBlock() { tryBlock = true; }
+    bool IsCatchBlock() const { return catchBlock; }
+    void SetAsCatchBlock() { catchBlock = true; }
     virtual GenResult Gen(Emitter& emitter, GenFlags flags);
     void GenReceiveCode(Emitter& emitter);
     virtual void Write(CodeFormatter& formatter, WriteFlags flags);
@@ -245,6 +247,7 @@
     bool hasBreakChild;
     bool hasContinueChild;
     bool tryBlock;
+    bool catchBlock;
     DestructionListPtr destructionList;
     Position closeBracePos;
     Ir::Intf::MetadataNodePtr lexicalBlockNode;

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks