aboutsummaryrefslogtreecommitdiffstats
path: root/Compiler.cpp
diff options
context:
space:
mode:
authorLiana Husikyan <liana@ethdev.com>2015-03-03 19:58:01 +0800
committerLiana Husikyan <liana@ethdev.com>2015-03-16 17:46:46 +0800
commit67cd3a7180023f613efda64f4f4d2b1bc37990c6 (patch)
tree2a21e2f726baf19f39e999083158a32f90492cec /Compiler.cpp
parenta16677dcfbd7fd7d42fbd6166e234b1b7001ec59 (diff)
downloaddexon-solidity-67cd3a7180023f613efda64f4f4d2b1bc37990c6.tar
dexon-solidity-67cd3a7180023f613efda64f4f4d2b1bc37990c6.tar.gz
dexon-solidity-67cd3a7180023f613efda64f4f4d2b1bc37990c6.tar.bz2
dexon-solidity-67cd3a7180023f613efda64f4f4d2b1bc37990c6.tar.lz
dexon-solidity-67cd3a7180023f613efda64f4f4d2b1bc37990c6.tar.xz
dexon-solidity-67cd3a7180023f613efda64f4f4d2b1bc37990c6.tar.zst
dexon-solidity-67cd3a7180023f613efda64f4f4d2b1bc37990c6.zip
added parsing for constant variables
Diffstat (limited to 'Compiler.cpp')
-rw-r--r--Compiler.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/Compiler.cpp b/Compiler.cpp
index b8ca03d3..0f4e89de 100644
--- a/Compiler.cpp
+++ b/Compiler.cpp
@@ -276,13 +276,14 @@ void Compiler::registerStateVariables(ContractDefinition const& _contract)
{
for (ContractDefinition const* contract: boost::adaptors::reverse(_contract.getLinearizedBaseContracts()))
for (ASTPointer<VariableDeclaration> const& variable: contract->getStateVariables())
- m_context.addStateVariable(*variable);
+ if (!variable->isConstant())
+ m_context.addStateVariable(*variable);
}
void Compiler::initializeStateVariables(ContractDefinition const& _contract)
{
for (ASTPointer<VariableDeclaration> const& variable: _contract.getStateVariables())
- if (variable->getValue())
+ if (variable->getValue() && !variable->isConstant())
ExpressionCompiler(m_context, m_optimize).appendStateVariableInitialization(*variable);
}