Refactor to combined scope and stack height info.

This commit is contained in:
chriseth
2017-04-26 17:12:04 +02:00
parent 68218387cf
commit f3ec2ba39e
11 changed files with 151 additions and 63 deletions
+6 -6
View File
@@ -22,11 +22,12 @@
#pragma once
#include <libsolidity/ast/ASTForward.h>
#include <map>
#include <memory>
#include <vector>
#include <set>
#include <libsolidity/ast/ASTForward.h>
namespace dev
{
@@ -112,9 +113,8 @@ struct StatementAnnotation: ASTAnnotation, DocumentedAnnotation
namespace assembly
{
struct Identifier; // forward
struct Block; // forward
struct Scope; // forward
struct AsmAnalysisInfo;
struct Identifier;
}
struct InlineAssemblyAnnotation: StatementAnnotation
@@ -129,8 +129,8 @@ struct InlineAssemblyAnnotation: StatementAnnotation
/// Mapping containing resolved references to external identifiers and their value size
std::map<assembly::Identifier const*, ExternalIdentifierInfo> externalReferences;
/// Mapping containing the scopes (the result of the analysis phase).
std::map<assembly::Block const*, std::shared_ptr<assembly::Scope>> scopes;
/// Information generated during analysis phase.
std::shared_ptr<assembly::AsmAnalysisInfo> analysisInfo;
};
struct ReturnAnnotation: StatementAnnotation