mirror of
https://github.com/ton-blockchain/ton
synced 2025-03-09 15:40:10 +00:00
Implement #include
keyword with advanced checks and backtrace
This commit is contained in:
parent
1e0b587023
commit
9356a16b84
7 changed files with 113 additions and 9 deletions
|
@ -35,10 +35,11 @@ namespace funC {
|
|||
|
||||
extern int verbosity;
|
||||
extern bool op_rewrite_comments;
|
||||
extern std::string generated_from;
|
||||
|
||||
constexpr int optimize_depth = 20;
|
||||
|
||||
const std::string func_version{"0.1.0"};
|
||||
const std::string func_version{"0.2.0"};
|
||||
|
||||
enum Keyword {
|
||||
_Eof = -1,
|
||||
|
@ -110,7 +111,8 @@ enum Keyword {
|
|||
_Infixl,
|
||||
_Infixr,
|
||||
_Const,
|
||||
_PragmaHashtag
|
||||
_PragmaHashtag,
|
||||
_IncludeHashtag
|
||||
};
|
||||
|
||||
void define_keywords();
|
||||
|
@ -828,9 +830,11 @@ extern std::vector<SymDef*> glob_func, glob_vars;
|
|||
|
||||
// defined in parse-func.cpp
|
||||
bool parse_source(std::istream* is, const src::FileDescr* fdescr);
|
||||
bool parse_source_file(const char* filename);
|
||||
bool parse_source_file(const char* filename, src::Lexem lex = {});
|
||||
bool parse_source_stdin();
|
||||
|
||||
extern std::stack<src::SrcLocation> inclusion_locations;
|
||||
|
||||
/*
|
||||
*
|
||||
* EXPRESSIONS
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue