Significantly reduce the tendrils of DeclSpecs/Declarator/Declaration code
The stuff in decl.h/decl.cpp is messy, largely due to its close mapping to C-style variable declarations. This checkin has updated code throughout all of the declaration statement, variable, and function code that operates on symbols and types directly. Thus, Decl* related stuff is now localized to decl.h/decl.cpp and the parser. Issue #13.
This commit is contained in:
6
func.h
6
func.h
@@ -43,9 +43,7 @@
|
||||
|
||||
class Function {
|
||||
public:
|
||||
Function(DeclSpecs *ds, Declarator *decl, Stmt *code);
|
||||
|
||||
static Symbol *InitFunctionSymbol(DeclSpecs *ds, Declarator *decl);
|
||||
Function(Symbol *sym, const std::vector<Symbol *> &args, Stmt *code);
|
||||
|
||||
const Type *GetReturnType() const;
|
||||
const FunctionType *GetType() const;
|
||||
@@ -58,10 +56,8 @@ private:
|
||||
SourcePos firstStmtPos);
|
||||
|
||||
Symbol *sym;
|
||||
const FunctionType *type;
|
||||
std::vector<Symbol *> args;
|
||||
Stmt *code;
|
||||
bool isExported;
|
||||
Symbol *maskSymbol;
|
||||
Symbol *threadIndexSym, *threadCountSym;
|
||||
Symbol *taskIndexSym, *taskCountSym;
|
||||
|
||||
Reference in New Issue
Block a user