Changeset 61efa42 for src/CodeGen/FixMain.h
- Timestamp:
- Nov 10, 2023, 5:04:30 PM (10 months ago)
- Branches:
- master
- Children:
- 2174191
- Parents:
- f5ec35a
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/CodeGen/FixMain.h
rf5ec35a r61efa42 5 5 // file "LICENCE" distributed with Cforall. 6 6 // 7 // FixMain.h -- 7 // FixMain.h -- Tools to change a Cforall main into a C main. 8 8 // 9 9 // Author : Thierry Delisle … … 17 17 18 18 #include <iosfwd> 19 #include <memory>20 #include <list>21 22 #include "AST/LinkageSpec.hpp"23 19 24 20 namespace ast { … … 29 25 namespace CodeGen { 30 26 31 class FixMain { 32 public : 33 static inline ast::Linkage::Spec getMainLinkage() { 34 return replace_main ? ast::Linkage::Cforall : ast::Linkage::C; 35 } 27 /// Is this function a program main function? 28 bool isMain( const ast::FunctionDecl * decl ); 36 29 37 static inline void setReplaceMain(bool val) { 38 replace_main = val; 39 } 30 /// Adjust the linkage of main functions. 31 void fixMainLinkage( ast::TranslationUnit & transUnit, bool replaceMain ); 40 32 41 static bool isMain(const ast::FunctionDecl * decl); 42 43 static void fix( ast::TranslationUnit & translationUnit, 44 std::ostream &os, const char * bootloader_filename ); 45 46 private: 47 static bool replace_main; 48 }; 33 /// Add a wrapper around to run the Cforall main. 34 void fixMainInvoke( ast::TranslationUnit & transUnit, 35 std::ostream & os, const char * bootloaderFilename ); 49 36 50 37 } // namespace CodeGen
Note: See TracChangeset
for help on using the changeset viewer.