mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Contracts as types and framework for special global variables.
This commit is contained in:
+4
-1
@@ -23,6 +23,7 @@
|
||||
#include <libsolidity/AST.h>
|
||||
#include <libsolidity/Scanner.h>
|
||||
#include <libsolidity/Parser.h>
|
||||
#include <libsolidity/GlobalContext.h>
|
||||
#include <libsolidity/NameAndTypeResolver.h>
|
||||
#include <libsolidity/Compiler.h>
|
||||
#include <libsolidity/CompilerStack.h>
|
||||
@@ -45,7 +46,9 @@ void CompilerStack::parse()
|
||||
if (!m_scanner)
|
||||
BOOST_THROW_EXCEPTION(CompilerError() << errinfo_comment("Source not available."));
|
||||
m_contractASTNode = Parser().parse(m_scanner);
|
||||
NameAndTypeResolver().resolveNamesAndTypes(*m_contractASTNode);
|
||||
m_globalContext = make_shared<GlobalContext>();
|
||||
m_globalContext->setCurrentContract(*m_contractASTNode);
|
||||
NameAndTypeResolver(m_globalContext->getDeclarations()).resolveNamesAndTypes(*m_contractASTNode);
|
||||
m_parseSuccessful = true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user