source: src/ControlStruct/MultiLevelExit.hpp@ cb921d4

ADT ast-experimental enum forall-pointer-decay pthread-emulation qualifiedEnum
Last change on this file since cb921d4 was cb921d4, checked in by Andrew Beach <ajbeach@…>, 4 years ago

Changed some of the new ast code so they no longer pass around the empty LabelGenerator.

  • Property mode set to 100644
File size: 943 bytes
Line 
1//
2// Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
3//
4// The contents of this file are covered under the licence agreement in the
5// file "LICENCE" distributed with Cforall.
6//
7// MultiLevelExit.hpp -- Replaces CFA's local control flow with C's versions.
8//
9// Author : Andrew Beach
10// Created On : Mon Nov 1 13:49:00 2021
11// Last Modified By : Andrew Beach
12// Last Modified On : Mon Nov 8 10:53:00 2021
13// Update Count : 3
14//
15
16#pragma once
17
18#include <map>
19
20namespace ast {
21 class CompoundStmt;
22 class Label;
23 class Stmt;
24}
25
26namespace ControlStruct {
27
28class LabelGenerator;
29using LabelToStmt = std::map<ast::Label, const ast::Stmt *>;
30
31/// Mutate a function body to handle multi-level exits.
32const ast::CompoundStmt * multiLevelExitUpdate(
33 const ast::CompoundStmt *, const LabelToStmt & );
34
35}
36
37// Local Variables: //
38// tab-width: 4 //
39// mode: c++ //
40// compile-command: "make install" //
41// End: //
Note: See TracBrowser for help on using the repository browser.