From fe21ceec56728232a7b33f77fdb3601a1dcaddf6 Mon Sep 17 00:00:00 2001 From: Randy Heit Date: Tue, 29 Oct 2013 21:52:28 -0500 Subject: [PATCH] Add a constructor to PSymbolTable that takes a parent table as input --- src/dobjtype.cpp | 5 +++++ src/dobjtype.h | 1 + src/zscript/zcc_parser.cpp | 2 +- 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/dobjtype.cpp b/src/dobjtype.cpp index 76ac79095..161dc74e3 100644 --- a/src/dobjtype.cpp +++ b/src/dobjtype.cpp @@ -2507,6 +2507,11 @@ PSymbolTable::PSymbolTable() { } +PSymbolTable::PSymbolTable(PSymbolTable *parent) +: ParentSymbolTable(parent) +{ +} + PSymbolTable::~PSymbolTable () { ReleaseSymbols(); diff --git a/src/dobjtype.h b/src/dobjtype.h index 402a90ffc..98f1187b9 100644 --- a/src/dobjtype.h +++ b/src/dobjtype.h @@ -73,6 +73,7 @@ public: struct PSymbolTable { PSymbolTable(); + PSymbolTable(PSymbolTable *parent); ~PSymbolTable(); size_t MarkSymbols(); diff --git a/src/zscript/zcc_parser.cpp b/src/zscript/zcc_parser.cpp index 8a9ea4567..b79de0f62 100644 --- a/src/zscript/zcc_parser.cpp +++ b/src/zscript/zcc_parser.cpp @@ -255,7 +255,7 @@ static void DoParse(const char *filename) ZCCParse(parser, 0, value, &state); ZCCParseFree(parser, free); - PSymbolTable symbols; + PSymbolTable symbols(&GlobalSymbols); ZCCCompiler cc(state, NULL, symbols); cc.Compile(); #ifdef _DEBUG