Changes in src/CodeGen/FixMain.h [8e48fca4:61efa42]
- File:
-
- 1 edited
-
src/CodeGen/FixMain.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/CodeGen/FixMain.h
r8e48fca4 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 19 22 #include "SynTree/LinkageSpec.h"23 24 class Declaration;25 class FunctionDecl;26 20 namespace ast { 27 21 class FunctionDecl; 22 class TranslationUnit; 28 23 } 29 24 30 25 namespace CodeGen { 31 26 32 class FixMain { 33 public : 34 static inline LinkageSpec::Spec mainLinkage() { 35 return replace_main ? LinkageSpec::Cforall : LinkageSpec::C; 36 } 27 /// Is this function a program main function? 28 bool isMain( const ast::FunctionDecl * decl ); 37 29 38 static inline void setReplaceMain(bool val) { 39 replace_main = val; 40 } 30 /// Adjust the linkage of main functions. 31 void fixMainLinkage( ast::TranslationUnit & transUnit, bool replaceMain ); 41 32 42 static bool isMain(FunctionDecl* decl); 43 static bool isMain(const ast::FunctionDecl * decl); 44 45 static void fix( std::list< Declaration * > & decls, 46 std::ostream &os, const char* bootloader_filename ); 47 48 private: 49 static bool replace_main; 50 }; 33 /// Add a wrapper around to run the Cforall main. 34 void fixMainInvoke( ast::TranslationUnit & transUnit, 35 std::ostream & os, const char * bootloaderFilename ); 51 36 52 37 } // namespace CodeGen
Note:
See TracChangeset
for help on using the changeset viewer.